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

Sử dụng các biến làm OFFSET trong các trạng thái CHỌN bên trong các hàm được lưu trữ của mysql

Trong MySQL trước 5.5, bạn không thể đặt một biến vào LIMIT mệnh đề trong thủ tục lưu trữ MySQL. Bạn phải nội suy nó thành một chuỗi và sau đó thực thi chuỗi đó như một truy vấn động.

SET rand_offset = FLOOR(RAND() * (SELECT COUNT(*) FROM all_words));
SET @sql = CONCAT('SELECT word INTO str_rnd_word FROM all_words LIMIT 1 OFFSET ', rand_offset);
PREPARE stmt1 FROM @sql;
EXECUTE stmt1;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. LỖI:SQLSTATE [HY000] [2002] Không thể thực hiện kết nối vì máy mục tiêu đã chủ động từ chối nó

  2. Cách tránh chèn các bản ghi trùng lặp trong MySQL

  3. MySQL Group By để hiển thị kết quả mới nhất

  4. Sự khác biệt giữa THAM GIA BÊN TRONG, THAM GIA TRÁI, THAM GIA PHẢI và THAM GIA ĐẦY ĐỦ?

  5. Làm thế nào để chuyển đổi dấu thời gian thành datetime trong MySQL?