PHP MySQL ORDER BY Klauzula
Wybierz dane z tabeli bazy danych MySQL za pomocą klauzuli ORDER BY przy użyciu języka PHP
W tym przewodniku opisano, jak wybierać dane z tabeli bazy danych MySQL i sortować dane według określonej kolumny w kolejności rosnącej lub malejącej z klauzulą ORDER BY przy użyciu PHP na stosie XAMPP.
Warunki wstępne
Na potrzeby tego przewodnika utworzyłem tabelę o nazwie „sprzedaż” w bazie danych MySQL o nazwie „moja_firma” zawierającą następujące rekordy.
| id | name | count |
| 5 | Shampoo | 10 |
| 2 | Milk | 20 |
| 3 | Books | 14 |
| 4 | Chocos | 45 |
| 6 | Eggs | 12 |
Rekordy z tabeli sprzedaży
Wyświetl rekordy w tabeli bazy danych MySQL
Uwaga: w XAMPP w nazwach baz danych i tabel nie jest rozróżniana wielkość liter. Rozważy wielkie/małe litery tylko jako małe.
Jeśli nie utworzyłeś bazy danych i tabeli, zapoznaj się z poniższym przewodnikiem.
- Utwórz bazę danych i tabelę MySQL przy użyciu PHP w XAMPP
Co to jest klauzula ORDER BY?
Klauzula ORDER BY służy do sortowania danych tabeli MySQL w kolejności rosnącej lub malejącej. Klauzuli ORDER BY można używać wraz z instrukcją SELECT do sortowania danych w określonych kolumnach w uporządkowany sposób.
Składnia zapytania:
SELECT column1,column2,.,column n from table_name ORDER BY column_name asc/desc;Gdzie nazwa_kolumny to nazwa kolumny, w której wynik jest uporządkowany na podstawie wartości tej kolumny, asc służy do uporządkowania danych w porządku rosnącym, a desc służy do porządkowania danych w kolejności malejącej.
Domyślnie, jeśli nie podano żadnego argumentu, dane są sortowane w kolejności rosnącej.
Kroki, aby napisać kod PHP
1. Podaj nazwę serwera, nazwę użytkownika, hasło i nazwę bazy danych w swoim kodzie PHP.
2. Utwórz połączenie za pomocą funkcji mysqli_connect().
Kod:
$connection = mysqli_connect($server_name, $user_name, $password, $database_name);3. Określ zapytanie SQL, aby wybrać określone lub wszystkie rekordy kolumn w kolejności z tabeli. W tym kroku możemy podać zapytanie SQL, aby wybrać kolumny z tabeli i zapisać je w zmiennej.
Składnia:
$query = "SELECT column1,…. from Sales ORDER BY column_name";4. Zapisz wybrane wyniki w zmiennej o nazwie "final" za pomocą funkcji mysqli_query().
Składnia:
mysqli_query($connection, $query);5. Pobierz wiersze jeden po drugim z „końcowej” zmiennej za pomocą funkcji mysqli_num_rows().
Kod:
if (mysqli_num_rows($final) > 0) {
//get the output of each row
while($i = mysqli_fetch_assoc($final)) {
echo $i["column1”],…………..;
}
} else {
echo "No results";
}6. Zamknij połączenie.
Na koniec musimy zamknąć połączenie za pomocą funkcji mysqli_close().
Składnia:
mysqli_close($connection);Napiszmy teraz rzeczywisty kod PHP w oparciu o powyższe kroki.
Wybierz dane z tabeli bazy danych MySQL za pomocą klauzuli ORDER BY przy użyciu PHP
Przykładowy kod 1:
Poniższy kod PHP wybierze kolumny „id” i „name” z tabeli „sales” i wyświetli wynik w porządku rosnącym według kolumny „name”.
Utwórz zwykły plik tekstowy o nazwie select.php w folderze /htdocs z poniższą zawartością.
Uwaga: jeśli używasz Linuksa, folder htdocs będzie znajdować się w katalogu /opt/lampp/. Jeśli korzystasz z systemu Windows, htdocs będzie zwykle znajdować się w folderze C:xampp.
<?php
//specify the server name
$server_name = "localhost";
//specify the username
$user_name = "root";
//specify the password. Here, we use empty password
$password = "";
//specify the database name
$database_name = "my_company";
// Creating the connection by specifying the connection details
$connection = mysqli_connect($server_name, $user_name, $password, $database_name);
//sql query to select particular columns
//select id and name columns
$query = "SELECT id,name from sales ORDER BY name";
#get the result
$final = mysqli_query($connection, $query);
if (mysqli_num_rows($final) > 0) {
//get the output of each row
while($i = mysqli_fetch_assoc($final)) {
//get id and name columns
echo "id: " . $i["id"]. " ----> name: " . $i["name"]. "<br>";
}
} else {
echo "No results";
}
//close the connection
mysqli_close($connection);
?>Otwórz przeglądarkę internetową i przejdź do http://localhost/select.php. W oknie przeglądarki zobaczysz taki wynik.
Wybierz dane z tabeli bazy danych MySQL posortowane według kolumny nazwy w kolejności rosnącej, używając klauzuli ORDER By
Przykładowy kod 2:
W tym przykładzie wybierzemy kolumny „id” i „nazwa” z tabeli „sprzedaż” i wyświetlimy wynik w porządku malejącym według kolumny „nazwa”.
Kod jest dokładnie taki sam jak powyżej. Jedyna różnica polega na tym, że wybrane dane porządkujemy w kolejności malejącej. Po prostu znajdź następującą linię w powyższym przykładowym kodzie (tj. wybierz.php),
$query = "SELECT id,name from sales ORDER BY name";Zastąp to:
$query = "SELECT id,name from sales ORDER BY name desc";Otóż to. Otwórz przeglądarkę i wskaż jej adres URL http://localhost/select.php.
Zobaczysz, że dane z „nazwy” są uporządkowane w kolejności malejącej.
Wybierz dane z tabeli bazy danych MySQL posortowane według kolumny nazwy w kolejności malejącej, używając klauzuli ORDER By
Wniosek
W tym samouczku nauczyliśmy się sortować dane z tabeli bazy danych MySQL w kolejności rosnącej lub malejącej za pomocą klauzuli ORDER BY przy użyciu PHP na stosie XAMPP.


