select work_id,work_name from eg_work where work_link+',' like 'a,%'            a=select work_id from eg_proj where proj_id=1
這兩句SQL如何在非存儲過程下,將其閤並成一句SQL查詢!?

解决方案 »

  1.   


    select work_id,work_name from eg_work where work_link+',' like (select work_id from eg_proj where proj_id=1)+',%'
      

  2.   


    select work_id,work_name from eg_work where work_link+',' like 'a,'%select a=work_id from eg_proj where proj_id=1
      

  3.   

    不好意思看错select work_id,work_name from eg_work where work_link+',' like (select workid from eg_proj where proj_id=1)+',%'
      

  4.   


    /*方法1*/
    SELECT [eg_work].[work_id],[eg_work].[work_name]
    FROM [eg_work] JOIN [eg_proj] ON [eg_work].[work_link]+',' LIKE [eg_proj].[work_id]+',%'
    WHERE [eg_proj].[proj_id]=1
    /*方法2*/
    SELECT [eg_work].[work_id],[eg_work].[work_name]
    FROM [eg_work] JOIN [eg_proj] ON CHARINDEX([eg_proj].[work_id],[eg_work].[work_link]+',')>0
    WHERE [eg_proj].[proj_id]=1/*方法3*/SELECT [work_id],[work_name]
    FROM [eg_work] 
    WHERE [work_link]+',' LIKE (SELECT [work_id] FROM [eg_proj] WHERE [proj_id]=1)+'%'