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

Sử dụng Bí danh cột trong cùng Mệnh đề CHỌN

Không có cách nào để tham chiếu đến bí danh, nhưng bạn có thể gán biểu thức cho một biến, sau đó tham chiếu đến biến trong cùng một mệnh đề chọn.

Bên trong một câu lệnh select, việc gán biến luôn được thực hiện bởi toán tử infix := . * Trong một SET , nó có thể là = hoặc := .

ví dụ.

SELECT 
    ord_id
  , candy_id
  , price
  , quantity
  , @exc_cost := price * quantity AS exc_cost
  , @exc_cost * @tax_rate AS my_favourite_field
...
<FROM CLAUSE>

Bạn cũng có thể thực hiện gán biến có điều kiện.

ví dụ.

IF(quantity > 90, 
     @exc_cost := price * quantity * 0.95
   , @exc_cost := price * quantity) AS exc_cost

Lưu ý 1:Trong trường hợp không có các thước đo tổng hợp &nhóm theo mệnh đề, các biến được đánh giá theo thứ tự cột:

SELECT @t, @t+2 FROM (SELECT @t := 1) a

tạo ra đầu ra

@t   @t+2
 1      3


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chọn Nhiều Id từ một bảng

  2. Lớp không có bảng hoặc tên bảng được chỉ định và không kế thừa từ một lớp được ánh xạ bảng hiện có

  3. xóa khóa hoạt động toàn bộ bảng trong innodb

  4. MySQL:Chỉ trả lại tin nhắn cuối cùng trong bảng tin nhắn hội thoại / phẳng

  5. Sử dụng câu lệnh PDO nhiều lần khi sử dụng nhiều vòng lặp foreach