SQL使用文字型態查詢日期時間問題。

edited 九月 2014 in 資料庫
資料庫A->資料表A1內容中有二個時間資料T1及T2,【T1型態為varchar(19)內容為日期時間用文字儲存】、【T2型態為datetime內容為日期時間】。
T1
===============
2014-09-22 10:10:00
2014-09-22 11:11:00
2014-09-23 12:16:00

T2
=================
2014-09-22 10:12:30
2014-09-22 11:13:40
2014-09-23 12:17:50



SELECT * FROM A1 WHERE T1 LIKE '2014-09-22'
SELECT T1 FROM A1 WHERE T1 LIKE '2014-09-22'
SELECT * FROM A1 WHERE T2 LIKE '2014-09-23'
SELECT T2 FROM A1 WHERE T2 LIKE '2014-09-23'
以上都無法查詢到資料。
SELECT * FROM A1 WHERE T1 LIKE '2014-09-22 10:10:00'
SELECT T1 FROM A1 WHERE T1 LIKE '2014-09-22 10:10:00'
SELECT * FROM A1 WHERE T2 LIKE '2014-09-23 12:17:50'
SELECT T2 FROM A1 WHERE T2 LIKE '2014-09-23 12:17:50'
這樣才可以查詢到資料。

LIKE不是有包含的功能嗎?請問查詢條件哪地方寫錯了?
另一個問題是T1及T2二種不同的資料可以使用變數的方法查找嗎?

$t=date(Y-m-d);
SELECT * FROM A1 WHERE T1 LIKE $t
或是
SELECT * FROM A1 WHERE T1 LIKE date('Y-m-d')

因為前一個就試不過了所以這個也卡了。
謝謝高手大哥指導指導。
謝恩。

評論

  • 第一個問題已經搞定了,謝謝大家。
    但第二個問還是存在還麻煩高手大哥指導指導。
    謝恩。
  • 1. SELECT T2 FROM A1 WHERE T2 LIKE '2014-09-23%'
    2. 你的範例就可以了,只是需要注意字串的組合吧
  • 謝謝版主指導。
Sign In or Register to comment.