MySQL - Wybieranie rekordów Drukuj Email
Ocena użytkowników: / 0
SłabyŚwietny 
Wpisany przez Berl   
niedziela, 06 marca 2011 10:50

Wybieranie rekordów realizujemy za pomocą instrukcji SELECT :

SELECT * FROM NazwaTabeli
 

Jest to podstawowe zapytanie, wybierające wszystkie pola wszystkich rekordów w tabeli. Jeśli chcemy wybrać tylko niektóre pola rekordu, to po słowie SELECT zamiast * wpisujemy nazwy pól :

SELECT NazwaPola1, ..., NazwaPolaN FROM NazwaTabeli
 

Tak skonstruowane zapytanie wybierze tylko żądane przez programistę pola tabeli. Takie rozwiązanie, jak każde, posiada zalety i wady. Zaletą jest nieco szybsze wykonanie zapytania, oraz mniejsza ilość pamięci zajmowana przez wynik zapytania, a wadą jest oczywiście brak niewybranych pól w wyniku, co może czasami doprowadzić do błędów, gdy na przykład zapytanie wykonujemy wywołując funkcję, której używaliśmy od zawsze, a okazuje się, że akurat potrzebne nam pole nie jest wybierane w tym zapytaniu. W tym jednak przypadku zalety są większe od wad tego rozwiązania.

Jeśli chcemy wybrać tylko rekordy spełniające jakiś warunek, musimy użyć instrukcji WHERE :

SELECT NazwaPola1, ..., NazwaPolaN
       FROM
        NazwaTabeli
       WHERE
        NazwaPola1 > 1
 

Powyższe zapytanie wybierze pola rekordu znajdujące się po słowie SELECT, i spełniające warunek zawarty po słowie WHERE. Warunki można łączyć za pomocą operatorów logicznych, takich jak AND lub OR :

SELECT NazwaPola1, ..., NazwaPolaN
       FROM
        NazwaTabeli
       WHERE
        NazwaPola1 > 1 AND NazwaPola2 < 4
 

Czasami przydaje się również sortowanie wybranych rekordów. Aby posortować wybrane rekordy, należy użyć instrukcji ORDER BY :

SELECT NazwaPola1, ..., NazwaPolaN
       FROM
        NazwaTabeli
       ORDER BY NazwaPola ASC
 

Po ORDER BY wpisujemy nazwę pola, po którym ma odbywać się sortowanie, a następnie sposób sortowania. Sortowanie może odbywać się rosnąco (ASC) lub malejąco (DESC)

Często przydaje się też ograniczenie ilości wybranych rekordów, na przykład do ich stronicowania przy wyświetlaniu. Aby ograniczyć ilość wybranych rekordów, musimy użyć instrukcji LIMIT :

SELECT NazwaPola1, ..., NazwaPolaN
       FROM
        NazwaTabeli
       LIMIT y
 

Powyższe zapytanie wybierze nam pierwsze y rekordów z tabeli. Aby wybrać drugą paczkę y rekordów, dalej posługujemy się instrukcją LIMIT :

SELECT NazwaPola1, ..., NazwaPolaN
       FROM
        NazwaTabeli
       LIMIT x,y
 

Powyższe zapytanie wybierze y rekordów, poczynając od rekordu x.

 

Statystyka

Użytkowników : 99
Artykułów : 76
Odsłon : 99790

Gościmy

Naszą witrynę przegląda teraz 2 gości 

Chmura tagów

delphi MySQL dziesiętny WHERE SendMessage Delphi rot-13 cezara binarny system forma WM_SYSCOMMAND ReleaseCapture SET windows szyfrowanie zamiana liczb FROM edytor zmienne