2015-11-11 71 views
0

我在我的數據庫中得到了包含日期+信息的幾行。Sql Select異常在哪裏

例如:

Col 01 

    01.01.2013: play video games 
    01.01.2014: Go for a walk 
    01.01.2015: sleep 
    ... 

在每個小區中有幾種不同的日期與不同年份。 我想在一個表,該表將這個樣子訂購此:

2013    | 2014   |  2015 
_________________|__________________|__________ 
play video games | go for a walk | sleep 
...    ....     .... 

我建了一個SQL但我希望它的工作沒有奏效。

SQL:

SELECT `COL 1` FROM `table 1` WHERE `COL 1` LIKE '%2013%' 

的問題是,這給了我整個小區,如果有一個2013年

現在我雖然,我需要某種例外的只是爲了獲得2013年的行, 但我不知道如何做到這一點,任何人都可以幫忙。

+1

不要存儲那樣的數據,有一列爲日期,另一列爲信息。 – jarlh

+0

不幸的是,這是客戶需要的方式 – Ale

+2

客戶很差,而且你很差。這隻會導致你很多麻煩,需要更長的時間,並可能最終導致更多的問題和錯誤... – jarlh

回答

0

如果日期是統一格式,你可以這樣做:

WHERE SUBSTRING(`COL 1`, 7, 4) = '2013' 

如果表很大,它可能會給性能問題雖然。

+0

表現不重要 – Ale

+0

我得到了一個空的結果 – Ale

+0

您可以嘗試選擇子字符串,以檢查它選擇的年份是否正確。 – HoneyBadger