[SQL] składnia polecenia select


(escort_) #1

Witam. Poszukuję stronki niestety nie zapisałem jej adresu na której w bardzo prosty sposób wyjaśnione było które kolumny w którym miejscu składni SELECT mogą być użyte. To było napisane coś na przykładzie: kolumna umieszczona w ORDER BY nie może być wpisana w WHERE. Niestety za chiny nie mogę znaleźć tej stronki z góry dzięki za pomoc.


(knyku) #2

No to jej nie szukaj bo Cię okłamali.


(Awiechoczek) #3

Faktycznie jeśli takie coś piszą na stronie to lepiej nie korzystać z tych porad :P.

Fraza where służy do ograniczenia selekcji danych zaś order by do sortowania więc niby czemu nie można.

Jeśli dam we frazie  where warunek np. kolumna a in (‘a’,‘b’,‘c’) to zdecydowanie mogę, i ma to sens, sortować po tym polu - np. order by a

A tak poważnie to często motor SQL-owy ma zaimplementowaną swoją własną obsługę standardu SQL i tym samym kod (zapytanie) napisany w Oracle (nie mówię o PL-SQL) niekoniecznie wykona się na MSSQL-u czy MySQL-u więc trudno polecić jakąś konkretną stronę lub manual.

Proponuję zapytać wujka google o konkretną implementację SQL-a a bez problemu znajdziesz sporo informacji.

 

Pozdrawiam

AdamW.


(mikolaj_s) #4

Tak jak napisali przedmówcy, to co podajesz to nie do końca prawda, no chyba, że napiszesz równość i wtedy sortowanie po tej kolumnie mija się z celem. Tylko, że takie zastady wynikają logicznie ze zrozumienia zapytań SQL. Zamiast poszukać takich rozwiązań kucharskich naucz się porządnie SQL. Na początek polecam:

http://epodrecznik.edu.pl/document/52f9f5e7e4b0cdf1276e2b14

http://epodrecznik.edu.pl/document/52fe8a20e4b0cdf1276e2b19

http://epodrecznik.edu.pl/document/5304b67ae4b0cdf1276e2b24