Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak oddzielić pierwszy wynik zapytania od reszty?

Wypróbuj coś takiego:

$results = $stm1->fetch();
print_r($results);

while($results = $stm1->fetch()){
    print_r($results);
}

W rzeczywistości nie potrzebujesz pętli, aby pobrać pierwszy element, a następnie możesz wznowić iterację z tym, co było twoją drugą pętlą.

Problem z

jest to, że jeśli w zestawie wyników znajduje się jeden lub więcej wyników, zawsze wywołaj $stm1->fetch() dwa razy:raz po raz pierwszy wprowadzisz pętlę, a następnie drugi raz w drugiej iteracji, zanim faktycznie sprawdzisz, że ($iterator == 1) nie jest już prawdą.

Jeśli w zestawie wyników znajdują się tylko dwa wyniki, zostanie to ujawnione w drugiej pętli, która nigdy nie zostanie wprowadzona (ponieważ pobieranie nie będzie miało żadnych wyników).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Promise-MySQL nie może zwolnić połączeń z powrotem do puli

  2. Błąd XML w ampersand (&)

  3. zapytanie sql, aby uzyskać usunięte rekordy

  4. Jak wywołać zdarzenie mysql po pewnym czasie?

  5. dodaj wiele danych w pliku xml za pomocą PHP xmlwriter