2014-11-04 97 views
0

我想編寫一個查詢,其中我希望在WHERE子句中具有依賴於結果集本身中的值的條件。informix:where條款中的動態條件

舉例來說,如果我有一個學生表列student_id數據,姓名,年齡,post_code,num_subjects_enrolled

我想生活在post_code =「郵編」和學生的所有名稱(如果他們採取多個主題我想按年齡過濾< 20其他年齡> 20)

我想在一個查詢中做所有事情。

我使用的是informix,任何幫助表示讚賞。

+0

如果所提供的答案是不足夠的幫助,那麼你需要澄清你的問題,特別是在以下方面「的語言是你用'在'中寫入SQL。然而,基本技術通常是在字符串中建立查詢,然後通過適合語言的步驟將該字符串轉換爲正在運行的查詢。不過,細節因語言而異。 – 2015-01-20 05:33:11

回答

1

我認爲你可以建立它與一些ANDOR邏輯:

SELECT name FROM student WHERE post_code = '12345' 
AND 
(
    (num_subjects_enrolled > 1 AND age < 20) 
    OR 
    (num_subjects_enrolled <= 1 AND age >= 20) 
)