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

DataBase 轉換問題 Access IIF 轉換到MS SQL問題

答題得分者是:anony
g9221712
高階會員


發表:145
回覆:344
積分:162
註冊:2006-07-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-01-11 17:35:31 IP:220.134.xxx.xxx 訂閱
各位前輩及版大:

我原有access查詢
-------------------------------------------------------------------------------------------------------------------------------
SELECT 員工編號, Sum(IIf([出席狀態]='Y',1,0)) AS 出席, Sum(IIf([出席狀態]='N',1,0)) AS 不出席
FROM 出席紀錄檔
GROUP BY 員工編號
-------------------------------------------------------------------------------------------------------------------------------
不知道要如何轉成MS SQL的VIEW查詢

------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」
程式寫的越久,卻發現自己越來越不會寫程式!
g9221712
高階會員


發表:145
回覆:344
積分:162
註冊:2006-07-06

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-01-12 06:43:23 IP:220.134.xxx.xxx 訂閱
我找到一個方式:
SELECT 員工編號, SUM((CASE 出席狀態 WHEN 'Y' THEN 1 WHEN 'N' THEN 0 END))
AS 出席, SUM((CASE 出席狀態 WHEN 'Y' THEN 0 WHEN 'N' THEN 1 END))
AS 未出席
FROM dbo.出席紀錄檔
GROUP BY 員工編號
不過呢? 不知道是我用access的adp模式去連mssql,還是其他原因,當我執行這個view時
他都會一直提示,我的欄位別名,沒有設定,我要將別名改成如下,就正常,不知道何緣故?
SELECT 員工編號, SUM((CASE 出席狀態 WHEN 'Y' THEN 1 WHEN 'N' THEN 0 END))
AS Expr1, SUM((CASE 出席狀態 WHEN 'Y' THEN 0 WHEN 'N' THEN 1 END))
AS Expr2
FROM dbo.出席紀錄檔
GROUP BY 員工編號
------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」
程式寫的越久,卻發現自己越來越不會寫程式!
anony
一般會員


發表:0
回覆:1
積分:5
註冊:2007-01-25

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-06-25 11:58:50 IP:60.250.xxx.xxx 訂閱
我也正好遇到這樣的問題,剛google了一下,發現有篇文章很不錯呢!!

IIF(expression, resultIftrue, resultIfFalse)
        IIF() is a handy inline switch comparison, which returns one result if the expression is true, and another result if the expression is false. IIF() is a VBA function, and as such, is not available in SQL Server. Thankfully, there is a more powerful function in SQL Server, called CASE. It operates much like SELECT CASE in Visual Basic. Here is an example query:

    -- Access:
    SELECT alias = IIF(Column<>0, "Yes", "No")
    FROM table
    -- SQL Server:
    SELECT alias = CASE WHEN Column<>0 THEN 'Yes' Else 'No' END
    FROM table
編輯記錄
anony 重新編輯於 2007-06-25 12:00:35, 註解 無‧
anony 重新編輯於 2007-06-25 12:01:56, 註解 無‧
系統時間:2024-07-02 22:07:12
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!