![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 18.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Jeśli zastosuje select * from tabelaA natural join tabelaB jaki zastosować proces wyszukiwania pola tekstowego bo z where imie LIKE 'Jan' nie działa. Natomiast działa where id = '33' Ten post edytował snakee 3.04.2017, 09:55:55 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Co się kryję pod pojęciem "nie działa"?
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
imie LIKE 'Jan'
woła o pomstę do nieba... |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Trzeba wiedzieć najpierw jak działa LIKE
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 18.08.2012 Ostrzeżenie: (0%) ![]() ![]() |
Nie działa miałem na myśli że nie ma ani jednego wiersza wyniku choć Jan'ów jest wiele
skoro SELECT * FROM tabelaA WHERE imie LIKE 'Jan' znajduje kilka wierszy dlaczego SELECT * FROM tabelaA NATURAL JOIN tabelaB WHERE imie LIKE 'Jan' nie znajduje ani jednego |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Wyrzuć where i zobacz jakie wyniki zostały zwrócone. Skoro nie ma to znaczy że nie spełniono warunku. Ogólnie odradza się też raczej korzystanie z natural join.
-------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Dlatego że natural join robi Ci złączenie po ID w obu tabelach, więc wynikiem mogą być wiersze nie zawierające twojego where, albo może nie być wcale wierszy
![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 18:30 |