簡體   English   中英

在INNER JOIN中使用列別名

[英]Using a column alias with INNER JOIN

嘗試運行以下查詢時,收到錯誤消息“'on子句'中的未知列'YahrzeitName'”:

SELECT 
concat(yahrzeit.firstName, ' ', yahrzeit.middleName, ' ', yahrzeit.lastName) 
AS 'YahrzeitName', 

concat(yahrzeit.gregorianYear, '-', yahrzeit.gregorianMonthNum, '-', yahrzeit.gregorianDay) 
AS Date,

tbldecedent.Name

FROM yahrzeit INNER JOIN tbldecedent 
ON YahrzeitName = tbldecedent.Name

您不能在join語句中使用列別名,而是用完整的表達式替換別名:

SELECT 
    concat(yahrzeit.firstName, ' ', yahrzeit.middleName, ' ', yahrzeit.lastName) AS `YahrzeitName`,
    concat(yahrzeit.gregorianYear, '-', yahrzeit.gregorianMonthNum, '-', yahrzeit.gregorianDay) AS `Date`,
    tbldecedent.Name
FROM yahrzeit 
INNER JOIN tbldecedent
ON concat(yahrzeit.firstName, ' ', yahrzeit.middleName, ' ', yahrzeit.lastName) = tbldecedent.Name

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM