Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để tách kết quả đầu tiên của truy vấn khỏi phần còn lại?

Hãy thử một cái gì đó như:

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

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

Bạn thực sự không cần một vòng lặp để lấy phần tử đầu tiên và sau đó bạn có thể tiếp tục lặp lại với những gì đã từng là vòng lặp thứ hai của bạn.

Vấn đề với

là nếu có một hoặc nhiều kết quả trong tập kết quả, bạn sẽ luôn luôn gọi $stm1->fetch() hai lần:một lần vào lần đầu tiên bạn vào vòng lặp và sau đó là lần thứ hai vào lần lặp thứ hai trước khi bạn thực sự kiểm tra rằng ($iterator == 1) không còn đúng nữa.

Nếu chỉ có hai kết quả trong tập kết quả của bạn, thì điều đó sẽ hiển thị trong vòng lặp thứ hai không bao giờ được nhập (vì tìm nạp sẽ không còn lại bất kỳ kết quả nào).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thứ tự MySQL theo mức độ liên quan

  2. # 1055 - Biểu thức của danh sách SELECT không nằm trong mệnh đề GROUP BY và chứa cột không được tổng hợp, cột này không tương thích với sql_mode =only_full_group_by

  3. Tải lên hình ảnh với sự trợ giúp của mảng và lỗi tìm nạp

  4. Codeigniter select- from- where

  5. TẢI THÔNG TIN DỮ LIỆU:Chuỗi ký tự ut8mb4 không hợp lệ