如何以不同的日期时间格式搜索字符串值?

时间:2013-01-16 17:39:17

标签: sql sql-server-2008 tsql

我尝试执行下面给出的SQL select查询。 Tarih是datetime字段。表中的Tarih:2013-01-09 00:00:00.000 但我的搜索值是09.01.2013

select * from [BankaEntegrasyonEslesmeyenler] as x  where x.Tarih='09.01.2013'
  

99 6631220220059BÜLENTÖZCAN
    28.3200 2831.5500 2013-01-09 00:00:00.000 TL 8

4 个答案:

答案 0 :(得分:1)

将您的日期值作为参数或通用ISO格式传递,例如 yyyymmdd,例如

'20130109'

答案 1 :(得分:1)

试试这个

SELECT * FROM [BankaEntegrasyonEslesmeyenler] AS x  WHERE CONVERT (CHAR(10), x.Tarih, 104) = '09.01.2013'

dd.mm.yyyy中格式化日期,并在没有时间的情况下比较日期。

答案 2 :(得分:0)

SELECT CONVERT(VARCHAR(8), GETDATE(), 3) AS [DD/MM/YY] 

dd/mm/yy格式

选择日期

答案 3 :(得分:0)

您对如何存储感到困惑。 2013-01-09 00:00:00.000只是默认的显示格式。

如果你想要这种格式,那就试试这个

select CONVERT ( char(10) , getdate() , 104 )

select CONVERT ( char(10) , x.Tarih , 104 ) from ....

CAST and CONVERT (Transact-SQL)