[英]SQL - Datetime conversion + Parameters
網路上有很多關於這個的東西,但是我什么都無法正常工作。
我需要從特定表中查找所有內容,在該表的“ timestamp” datetime中可以找到參數中的日期
因此,可以說。
Select g.*
From egtable..headerinfo as g
WHERE g.istatus BETWEEN 5 AND 10 AND
REPLACE(LEFT(CONVERT (varchar, timestamp, 101),10),' ','-') = convert(datetime,'<%parameterDate%>')
時間戳顯示為“ yyyy-mm-dd hh:mm:ss”,我的參數日期將為“ mm / dd / yyyy”
我的目標是最終剔除時間,轉換日期,然后與參數進行比較。 任何幫助,將不勝感激。 我嘗試了無數種組合,但似乎沒有任何效果:(
謝謝B
假設您使用的是MySQL,由於您未說明使用的內容,因此可以使用以下命令:
Select g.*
From egtable..headerinfo as g
WHERE g.istatus BETWEEN 5 AND 10 AND
timestamp = MAKEDATE(SUBSTRING('<%parameterDate%>', 4, 2),
SUBSTRING('<%parameterDate%>', 1, 2),
SUBSTRING('<%parameterDate%>', 6, 4))
MySQL中的MAKEDATE根據接收的日,月,年輸入為您創建日期字段
如果您使用的是SQL Server(您的查詢看起來像這樣)並且您的SQL Server版本號為2008或更高版本,則可以通過將date
強制轉換為date
來輕松擺脫datetime
的時間部分
cast(datetimecolumn as date)
在您的情況下,它將是:
Select g.*
From egtable..headerinfo as g
WHERE g.istatus BETWEEN 5 AND 10 AND
cast([timestamp] as date) = cast('<%parameterDate%>' as date)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.