[英]Mysql select all records that are greater than some date time
我想從date1
大於其他date2
表中選擇所有記錄。 Date1
是MySQL中的datetime
字段。 Date2
是PHP中的datetime
對象。 我不僅要比較日期,還要比較時間。 這是我不工作的查詢。
$sql = 'SELECT t.*
from transire t
where t.returning > '.$transire->returning.';';
錯誤:
Message: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error
in your SQL syntax; check the manual that corresponds to your MySQL server version
for the right syntax to use near '' at line 1
好的,我明白了,我不能像那樣比較php datetime對象,但是正確的方法是什么? 當然可以使用Date(t.returning),但我也需要當天的時間。 當前日期時間之后的所有事件。 我搜索並找到了一些答案,但沒有一個對我有幫助。 謝謝 !
應該是這樣的:
$sql = 'SELECT t.* from transire t where t.returning > "'.$transire->returning.'";';
在PHP中為變量使用雙引號,並在日期前后添加單引號:
$sql = "SELECT t.* from transire t where t.returning > '".$transire->returning."'";
並通過轉義變量來避免SQL注入。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.