我是使用SQL的初学者,我只是在搞乱学习。如果我试图将名字字段和姓氏字段组合到名称字段中,我可以在我的SQL代码中使用该别名吗?
例如,(使用Northwind Access示例数据库)我试图使用名称字段的别名拉出以“J”开头的所有名称的公司和地址
以下示例代码
SELECT Company, Address, [First Name] + " " + [Last Name] AS Name
FROM Customers
WHERE Name LIKE "J%";
在Access中,这会弹出一个参数框而不返回结果,即使我知道有些名字以J开头。
答案 0 :(得分:2)
除少数例外情况外,您无法在同一级别的查询中的其他位置使用SELECT
中定义的别名。因此,您无法在SELECT
或WHERE
中再次使用别名。
但是可以使用子查询:
SELECT c.*
FROM (SELECT Company, Address, [First Name] & " " & [Last Name] AS Name
FROM Customers
) as c
WHERE Name LIKE "J*";
请注意,我将字符串连接运算符从+
更改为&
,并将LIKE
模式中的通配符从'%'更改为到' *'。这些更改是为了使查询与MS Access兼容。
答案 1 :(得分:1)
根据this,您只能在Access中输出别名。无法将它们用作查询的一部分。没有抓到谁之前发布此链接的信用。