2013-04-24 78 views
0

我是新來的SQL,似乎無法讓我的頭只在部分語句上使用WHERE子句。例如,(基本上是寫)有一個簡單的選擇問題,其中聲明

SELECT Forename, Surname, Organisation 
FROM Client table 

SELECT Renewal day AND Renewal month AS Renewal date 
FROM Client table 
WHERE Renewal day <> 0 

我需要這一切是一個語句,但也讓where子句不影響錄名字,姓氏和組織領域。例如,該表格將充滿客戶端,但續訂日期列將只顯示有客戶端的日期。謝謝

+0

這是MySQL – Johnathan 2013-04-24 15:42:06

+1

你能提供一些示例數據,哪些是你實際上是希望得到從查詢? – tster 2013-04-24 15:42:10

+0

它將擁有所有的客戶數據(姓氏,姓氏,組織),但只包含那些有更新日期的人 – Johnathan 2013-04-24 15:44:08

回答

1
SELECT Forename, Surname, Organisation, IF(Renewal day <> 0, Renewal day AND Renewal month, '') as Renewal 
FROM Client table 

應該這樣做。這不會馬上跑作爲IF AND語句將不被喜歡,雖然你可以使用:

IF(Renewal day <> 0, CONCAT(Renewal day,Renewal month), '') as Renewal 

IF(Renewal day <> 0, Renewal day) as renewDay, IF(Renewal day <> 0, Renewal month, '') as renewMonth 

有2個獨立的領域。

0

最簡單的事情就是更新日期存儲爲日期,並允許空值,那麼你只是做:

SELECT Forename, Surname, Organization, RenewalDate 
FROM Client