2012-12-11 39 views
-3

目前,我有這個查詢運行我MS查詢語法修正

SELECT `Sheet1$`.ACCT_CODE, `Sheet1$`.ACCTG_DATE, `Sheet1$`.AGENT_NO, `Sheet1$`.BAL_BOOK_CODE, `Sheet1$`.JRNL_ID_NO, `Sheet1$`.PRODUCT_CODE, `Sheet1$`.SOURCE_SYSTEM_ID, `Sheet1$`.`SUM(DR_CR_AMOUNT)` 
FROM `Sheet1$` `Sheet1$` 
WHERE (`Sheet1$`.BAL_BOOK_CODE='5092') AND (`Sheet1$`.ACCT_CODE Not Like '%H%') AND (`Sheet1$`.AGENT_NO='943776') OR (`Sheet1$`.BAL_BOOK_CODE='509A') AND (`Sheet1$`.ACCT_CODE Not Like '%H%') AND (`Sheet1$`.AGENT_NO='943776') 
ORDER BY `Sheet1$`.ACCT_CODE 

查詢給侷限於AGENT_NO結果= '943776'

而我想要的結果,顯示

  1. ACCT_CODE不是'%H%'和
  2. 如果AGENT_NO ='943776',那麼BAL_BOOK_CODE ='509A'或BAL_BOOK_CODE ='5092'
  3. 顯示所有其他AGENT_NO
+0

使用在CASE子句 檢查此鏈接:http://stackoverflow.com/questions/206484/sql-switch-case-in-where-clause – Hiten004

回答

0

選擇Sheet1$ .ACCTG_DATE,Sheet1$ .JRNL_ID_NO,Sheet1$ .ACCT_CODE,Sheet1$ .SOURCE_SYSTEM_ID,Sheet1$ .AGENT_NO,Sheet1$ .PRODUCT_CODE,Sheet1$ .BAL_BOOK_CODE,Sheet1$SUM(DR_CR_AMOUNT)C:\Documents and Settings\Amit Joshi\Desktop\Book1.xlsxSheet1$Sheet1$ WHERE(Sheet1$ .ACCT_CODE不喜歡 '__H ')和(Sheet1$ .AGENT_NO <>' 943776')

聯盟所有

選擇Sheet1$ .ACCTG_DATE,Sheet1$ .JRNL_ID_NO,Sheet1$ .ACCT_CODE, Sheet1$.SOURCE_SYSTEM_ID,Sheet1$。AGENT_NO,Sheet1$ .PRODUCT_CODE,Sheet1$.BAL_BOOK_CODE,Sheet1$SUM(DR_CR_AMOUNT)C:\Documents and Settings\Amit Joshi\Desktop\Book1.xlsxSheet1$Sheet1$ WHERE(Sheet1$ .BAL_BOOK_CODE = '5092')和(Sheet1$ .AGENT_NO = '943776')或(Sheet1$ .BAL_BOOK_CODE = '509A')和(Sheet1$ .AGENT_NO = '943776')