亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何執行if…然后在SQL選擇中?

如何執行if…然后在SQL選擇中?

忽然笑 2019-06-12 14:54:30
如何執行if…然后在SQL選擇中?如何執行IF...THEN在SQL SELECT口供?例如:SELECT IF(Obsolete = 'N' OR InStock = 'Y' ? 1 : 0) AS Saleable, * FROM Product
查看完整描述

3 回答

?
MM們

TA貢獻1886條經驗 獲得超2個贊

這個CASE語句是SQL中最接近if的語句,所有版本的SQLServer都支持該語句。

SELECT CAST(
             CASE
                  WHEN Obsolete = 'N' or InStock = 'Y'
                     THEN 1
                  ELSE 0
             END AS bit) as Saleable, *FROM Product

你只需要做CAST如果您希望將結果作為布爾值。如果你對int,這起作用是:

SELECT CASE
            WHEN Obsolete = 'N' or InStock = 'Y'
               THEN 1
               ELSE 0
       END as Saleable, *FROM Product

CASE語句可以嵌入到其他語句中。CASE語句,甚至包括在集合中。

SQLServer Denali(SQLServer 2012)添加IIF語句,該語句也可在存取(由馬丁·史密斯):

SELECT IIF(Obsolete = 'N' or InStock = 'Y', 1, 0) as Saleable, * FROM Product


查看完整回答
反對 回復 2019-06-12
?
斯蒂芬大帝

TA貢獻1827條經驗 獲得超8個贊

在這種情況下,案例陳述是您的朋友,其形式有兩種:

簡單的例子:

SELECT CASE <variable> WHEN <value>      THEN <returnvalue>
                       WHEN <othervalue> THEN <returnthis>
                                         ELSE <returndefaultcase>
       END AS <newcolumnname>FROM <table>

擴大案件:

SELECT CASE WHEN <test>      THEN <returnvalue>
            WHEN <othertest> THEN <returnthis>
                             ELSE <returndefaultcase>
       END AS <newcolumnname>FROM <table>

您甚至可以將CASE語句放入ORDERBY子句中,以便進行真正花哨的排序。


查看完整回答
反對 回復 2019-06-12
  • 3 回答
  • 0 關注
  • 1091 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號