2015-01-05 80 views
0

我有下面的SQL查询,试图插入数据到测试表,但我有另一个要求,我需要插入雇员号码与他/她的名字。将值插入表

例 姓:71853-乌萨马

我的问题是,怎样才能插入两个值到一个属性 我想这

badgeno +'-'+ convert(nvarchar(100),cEmpname) as cEmpname 

,但它没有工作

insert into PT ( 
     [FirstName] 
     ,[LastName] 
     ,[FirmID] 
     ,[Note] 
     ,[City] 
     ,[ThirdPartyId] 
     ,[RegisteredBy] 
     ,[Registered] 
     ,[LastUpdatedBy] 
     ,[LastUpdated] 
       ) 

    SELECT distinct 
    convert(nvarchar(100),cEmpname) as cEmpname 
     ,convert(nvarchar(100),cJobTitle) as cJobTitle 
     ,'2' as FirmID 
     ,convert(nvarchar(500),sort1) as sort1 
     ,convert(nvarchar(255),cnationality) as cnationality 
    , badgeno as 'ThirdPartyId' 
    ,'admin' as RegisteredBy 
    ,CURRENT_TIMESTAMP as Registered 
    ,'admin' as LastUpdatedBy 
    , CURRENT_TIMESTAMP as LastUpdated 


     FROM [TrailBlazerNG].[dbo].[payper] where lactive = '1' 
     and not exists (select 1 from PT where payper.badgeno = PT.ThirdPartyId) 
+3

其实不这样做 - 绝不多个值存储在一个列 –

+0

您可以使用CONCAT_WS功能的MySQL到Concat的字符串 –

+0

@CharveeShah:它并不真正应用的时候,问题是标签作为SQL服务器。 – Arion

回答

0

请在下面尝试。

insert into PT ([FirstName],[FirmID],[Note],[City],[ThirdPartyId],[RegisteredBy],[Registered],[LastUpdatedBy],[LastUpdated]) 

SELECT distinct 
convert(nvarchar(100),badgeno)+'-'+convert(nvarchar(100),cEmpname) as cEmpname 
    ,convert(nvarchar(100),cJobTitle) as cJobTitle 
    ,'2' as FirmID 
    ,convert(nvarchar(500),sort1) as sort1 
    ,convert(nvarchar(255),cnationality) as cnationality 
, badgeno as 'ThirdPartyId' 
,'admin' as RegisteredBy 
,CURRENT_TIMESTAMP as Registered 
,'admin' as LastUpdatedBy 
, CURRENT_TIMESTAMP as LastUpdated 


    FROM [TrailBlazerNG].[dbo].[payper] where lactive = '1' 
    and not exists (select 1 from PT where payper.badgeno = PT.ThirdPartyId)