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

Sử dụng lại trường bí danh trong câu lệnh SQL SELECT

Một workaroud sẽ là sử dụng một truy vấn phụ:

SELECT
  FieldA,
  FieldA + 20 AS FieldB
FROM (
  SELECT 
    (CASE WHEN ...) AS FieldA
  FROM Tbl
) t

Để cải thiện khả năng đọc, bạn cũng có thể sử dụng CTE :

WITH t AS (
  SELECT 
    (CASE WHEN ...) AS FieldA
  FROM Tbl
)
SELECT
  FieldA,
  FieldA + 20 AS FieldB
FROM
  t


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ISO_year trong sql-server là gì

  2. Tại sao câu lệnh xóa SQL đơn sẽ gây ra bế tắc?

  3. Hiểu kích thước bộ nhớ ‘datetime2’ trong SQL Server

  4. Cách truy xuất tên trường từ bảng tạm thời (SQL Server 2008)

  5. Cách bao gồm các kết quả gắn với vị trí cuối cùng khi sử dụng mệnh đề TOP trong SQL Server