1age是年龄吗,是什麼数据类型,我这里只能是这样:
select name from Employee where age between 272 and 275
2select top 10 from (SELECT top 20 from Employee order by salary desc) t order by salary asc
先建立一个函数
--------------
CREATE function f_hysf111(@yhid varchar(50))
returns varchar(200)
as
begin
declare @rcount int
declare @c varchar(200)
set @c=''
declare @x char(20),@y char(20)
set @x=''
set @y=''
set @rcount=0
select @rcount =count()from t1 WHERE 组名 = @yhid
if @rcount=0
set @c=''
else
begin
select @y=@x,@x=x组名,@c=@c+(case when len(@c)=0 then '' else '|' end ) +ltrim(rtrim(xd))
from (select isnull(姓名,'')as d,组名 from t1 WHERE 组名 = @yhid ) as x
end
return(ltrim(rtrim(@c)))
end
--------------
然后查询语句:
select 组名,dbof_hysf111(组名)as 姓名 from t1 group by 组名
请说明使用的数据库类型
mysql如下
select distinct from(
select from WorersSalary orde by Salary desc limit 0,3 a union
select from WorersSalary b)
sqlserver如下
select distinct from(
select top 3 from WorersSalary orde by Salary desc a union
select from WorersSalary b)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)