mac*_*cha 3 sql t-sql sql-server
我有一个问题,我正在研究表别名,并遇到一个奇怪的问题.当我不使用表别名时,我可以使用null作为列名,但如果我使用表别名,我会遇到问题.
works!
select top 10 eid, null as emp_no from employee
does not work!!
select top 10 e.eid, null as e.emp_no from employee e
Run Code Online (Sandbox Code Playgroud)
有出路吗?当我加入另一张桌子时,我遇到了一个问题.
Trying to make it work !
select top 10 e.eid, null as e.emp_no, ed.desgination from employee e
inner join employee_designations ed on e.eid=ed.eid
Error
Msg 102, Level 15, State 1, Line 1
Incorrect syntax near '.'.
Run Code Online (Sandbox Code Playgroud)
尝试:
select top 10 e.eid, null as emp_no from employee e
Run Code Online (Sandbox Code Playgroud)
你可以使用别名NULL,但是如果你声称它来自表别名,那么SQL将会产生混乱e.
更新:
要NULL在联接中使用,请将其转换为子查询:
SELECT e.eid
, e.emp_no
FROM (
SELECT TOP 10 eid
, NULL AS emp_no
FROM employee
) AS e
Run Code Online (Sandbox Code Playgroud)
将您的子查询别名为e,现在SQL将乐意接受NULL为e.emp_no.