Sql 叠加记录方法

 如测试表: Users



ResumeID
SkillName
Level
TimeLong
27408
WebSphere
一般
12个月
27408
*BSD
熟练
12个月
27408
Mac熟练12个月
27409
ADi熟练12个月


查询Users表实现如下效果:
WebSphere: 一般 12个月;*BSD: 熟练:12个月;Mac: 熟练:12个月;Acrobat: 一般:12个月;

接下来创建函数 getSkillString

create  FUNCTION dbo.getSkillString
    (
    @personID int
    /*
    根据传入的用户ID 返回该用户的所有技能集合
    */
    )
RETURNS varchar(max)
AS
    BEGIN
    declare @skill varchar(max)
    set @skill=''
        begin
        select  @skill= @skill+'  '+Users.SkillName +':'+Users.Level+':'+Users.TimeLong+';'  from Users
        where Users.ResumeId=@personID
        end
    RETURN @skill
    END

调用:select dbo.getSkillString(27408)
OK,结果出来了,

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值