select Sname from
(select Sname,N'Age' = datediff(year,sbirthday,getdate()) -
case when right(convert(char(10),[Sbirthday],120),5) > right(convert(char(10),getdate(),120),5)
then 1 else 0 end from [dbo].[Student])as temptalbe
where Age between 18 and 19
go
这里as temptalbe的作用是什么?select Sname from中Sname列的前序又是什么?
我T-SQL语法还未过关,望各位详细一点介绍。这里用的MS SQL2000
(select Sname,N'Age' = datediff(year,sbirthday,getdate()) -
case when right(convert(char(10),[Sbirthday],120),5) > right(convert(char(10),getdate(),120),5)
then 1 else 0 end from [dbo].[Student])as temptalbe
where Age between 18 and 19
go
这里as temptalbe的作用是什么?select Sname from中Sname列的前序又是什么?
我T-SQL语法还未过关,望各位详细一点介绍。这里用的MS SQL2000
----------
为子查询取个表别名
select Sname from中Sname列的前序又是什么?
--------
默认就是from的表 temptable
表的别名,SQL语法规定的,这种from()的必须带别名
Sname列的前序 什么意思没看懂
(
select Sname,N'Age' = datediff(year,sbirthday,getdate()) -
case when right(convert(char(10),[Sbirthday],120),5) > right(convert(char(10),getdate(),120),5)
then 1 else 0 end from [dbo].[Student]
)as temptalbe ---别名
where Age between 18 and 19
from
(
select OrderID from Orders
) as t--没有报错