代码之家  ›  专栏  ›  技术社区  ›  Tempname

带In IsNull的Select语句

  •  3
  • Tempname  · 技术社区  · 16 年前

    我正在编写一个存储过程,在此过程中我使用的是isNull。如果值为空,我想使用一个select语句作为替换值,这是否可能?

    IF ISNULL(@v_FilePrefix, (SELECT @v_FilePrefix = TransactionTypePrefix 
                                FROM [ConfigTransactionType] 
                               WHERE TransactionTypeID = @TransactionTypeID));
    
    2 回复  |  直到 16 年前
        1
  •  1
  •   Dean Harding    16 年前

    IF @v_FilePrefix IS NULL
    BEGIN
    
        SELECT @v_FilePrefix = TransactionTypePrefix
        FROM [ConfigTransactionType]
        WHERE TransactionTypeID = @TransactionTypeID
    
    END
    

        2
  •  1
  •   OMG Ponies    16 年前

    SELECT @v_FilePrefix = COALESCE(@v_FilePrefix, TransactionTypePrefix)
      FROM [ConfigTransactionType] 
     WHERE TransactionTypeID = @TransactionTypeID
    

    IF @v_FilePrefix IS NULL
    BEGIN
    
       SELECT @v_FilePrefix = TransactionTypePrefix
         FROM [ConfigTransactionType]
        WHERE TransactionTypeID = @TransactionTypeID
    
    END