检查SQL和VB.NET中的日期是否小于另一个

时间:2012-03-01 14:34:17

标签: sql vb.net

我有2个SQL表(A& B),日期格式为DD / MM / YYYY和时间,例如01/03/2012 00:00:00。在我的VB.net应用程序中,我希望计算表A中记录的数量,这些记录的日期小于表B中的记录。我从数据库中获取日期没有问题。我已经在表B中提取了日期并将其存储在程序中。我只是不确定如何比较SQL查询中的日期。

简而言之,我要做的是:

"select count(records) as totalRecords from table A where date < " & dateBvariable & ""

任何帮助表示赞赏

3 个答案:

答案 0 :(得分:1)

如果您在'引号中将日期作为字符串传递,则可能会有效:

where date < '" & dateBvariable & "'"

或将其格式化为ODBC标准:

where date < '" & dateBvariable.ToString("yyyy-MM-dd HH:mm:ss") & "'"

更好的是传递一个参数:

where date < @par1

并将参数添加到SqlCommand

command.AddWithValue "@par1", dateBvariable

答案 1 :(得分:1)

尝试使用参数设置日期。 E.g:

Dim sqlCmd As New SqlCommand("select count(records) as totalRecords from tableA where dateField < @DateParam")

sqlCmd.Parameters.AddWithValue("@DateParam", DateTime.Today)

答案 2 :(得分:1)

尝试

"select * from lk.media_months where begin_on < cast('" & dateVarialbe & "' as DATETIME)"