• 表关联中存在某字段多选表无法匹配——用数据库写一个方法


    问题:有两个表A和B,B中的字段B006对应界面的问题来源栏位,该栏目对应多个选择,可以多选可以全选;现在输入问题追踪号,要求带出提交人

    表结构:

     SQL:直接用sql写:

      select BG006 from B 

      left join A on   CA007=BG004 and

                                 CA001=BG003

           where BG006=多选的值 and

                      CA002='问题追踪号'

    我感觉这个是因为系统设计的问题,这里的BG006的值是从CA002决定的,但是这两个同时作为条件值去查询其他条件,所以这边就存在一个BG006会是个变量,不确定的原因;

    数据库写成方法:

        将问题跟踪号作为赋值的变量:

        使用declare 进行申明变量

    CREATE FUNCTION GETSUBMITTER(

      DECLARE @CA002 nvarchar(40) 

    )

     返回值 创建临时表去承接变量BG006的值:

      RETURNS @Result TABLE 

    (
        BG006  NVARCHAR(MAX)
    )

    AS 

    BEGIN

    DECLARE @BG003 NVARCHAR(60)

    --求出问题追踪号对应的问题来源值

    SELECT @ BG003=CA003

            FROM   A

           WHERE CA002='问题追踪号'

     insert @Result

         select BG006

         from B

         where BG006=@ BG006

    RETURN

    END

  • 相关阅读:
    2-Fourteenth Scrum Meeting-20151214
    2-Thirteenth Scrum Meeting-10151213
    2-Twelfth Scrum Meeting20151212
    2-Eleventh Scrum Meeting20151211
    L465 Climate Change May Take Away Your Ability to Flush the Toilet
    L458 Interview
    L457 早上锻炼减肥
    L456 学英语 看美剧
    L455 人之初,性本衰
    L454 正确喝水
  • 原文地址:https://www.cnblogs.com/hplsharenote/p/11941801.html
Copyright © 2020-2023  润新知