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

các biến tạm thời của MySQL có thể được sử dụng trong mệnh đề WHERE không?

Bạn cần chỉ định bí danh và kiểm tra bí danh đó trong HAVING mệnh đề:

SELECT id, @var := id * 2 AS id_times_2
FROM user
HAVING id_times_2 < 10

Lưu ý rằng nếu bạn chỉ đang sử dụng công thức để lọc, không phải để truyền kết quả nội bộ từ hàng này sang hàng khác, thì bạn hoàn toàn không cần biến. Bạn có thể viết:

SELECT id, id * 2 AS id_times_2
FROM user
HAVING id_times_2 < 10


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Quét bảng mysql từ dưới cùng

  2. Các giá trị trùng lặp của MySql trong một liên kết sử dụng GROUP_CONCAT

  3. mySQL tổng của hai giá trị trong 2 bảng khác nhau

  4. Mối quan hệ nhiều-nhiều chọn và đặt hàng theo

  5. Cách đánh số lại chỉ mục chính