全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3163
推到 Plurk!
推到 Facebook!

請問關於SQL語法中IIF這函數Access&MSSQL

尚未結案
asupeduer
初階會員


發表:36
回覆:49
積分:27
註冊:2002-11-08

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-03-23 00:09:59 IP:61.13.xxx.xxx 未訂閱
在Access中,有一個函數叫IIF,使用方式為IIF(bool,'true','false') 假設一資料表TableX一欄位AA為布林值,則IIF(AA,'男生','女生') Select IIF(AA,'男生','女生') From TableX 則可直接顯示該為男生或女生......    然而在MS SQL SERVER 2000 中T_SQL卻不支援直接用IIF這個函數, 請問標準的ANSI SQL語法或T_SQL語法中,如何將布林值直接轉換 顯示成為一替代文字?或有其他好方法或語法嗎?請各位前輩指教    ps:其實我想做的是IIF((Cast(Lfet(發票號碼,2) as int))<50),'1','2') 發票號碼的最後兩碼作為判斷,小於50的在第一頁明細表,大於50的再第二頁 //------------------------------------------------ 我常在想,寫程式跟爬格子到底有什麼不同呢??????????? //------------------------------------------------
------
//------------------------------------------------
我常在想,寫程式跟爬格子到底有什麼不同呢???????????
//------------------------------------------------
ddy
站務副站長


發表:262
回覆:2105
積分:1169
註冊:2002-07-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-03-23 00:24:53 IP:211.74.xxx.xxx 未訂閱
IIF 只有access 自己支援 用Case 吧 例:
    SELECT
   CASE sex
      WHEN '1' THEN 男'
      WHEN '2' THEN '女'
      ELSE '資料不正確'
   END AS sex, 
birthDay, 
FROM EmpTable
發表人 - ddy 於 2003/03/23 00:27:43 發表人 - ddy 於 2003/03/23 00:34:07
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-03-23 01:13:27 IP:61.221.xxx.xxx 未訂閱
引言: ps:其實我想做的是IIF((Cast(Lfet(發票號碼,2) as int))<50),'1','2') 發票號碼的最後兩碼作為判斷,小於50的在第一頁明細表,大於50的再第二頁
MS-SQL 不支援 IIF, 請改用 CASE 的語法. 可以參考: http://delphi.ktop.com.tw/topic.php?TOPIC_ID=25262 你的 IIF((Cast(Left(發票號碼,2) as int))<50),'1','2') 可以改為 Case when (Cast(Left(發票號碼,2) as int))<50 then '1' Else '2' End 即可!!
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-03-23 03:24:47 IP:61.216.xxx.xxx 未訂閱
假設發票號碼10碼 SELECT 'a' as XX,發票號碼 FROM TABLE WHERE SUBSTR(發票號碼,9,2) <50 union SELECT 'b' as XX發票號碼 FROM TABLE WHERE SUBSTR(發票號碼,9,2) >50 ORDER BY xx 列印時用xx作跳頁條件,應該可以達到你要的 TRY TRY SEE
系統時間:2024-06-24 19:29:59
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!