簡體   English   中英

SQL-日期時間轉換+參數

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM