c# winform按日期查找sql数据库

c# winform按日期查找sql数据库,第1张

首先

查询逻辑

根据两

间点返

数据源例

:DataTable/DataSet/Xml等

数据库连接字符例

:var

connStr

=

ConfigurationAppSetting["connStr"];

public

DataTable

GetDataTable(DateTime

dtStart,DateTime

dtEnd)

{

var

sql

=

"select

from

[Table]

Where

1

=

1

";

if(dtStartHasValue&&dtStartValue!=DateTimeMinValue)

{

sql+=

"

and

[Filed]>='"+dtStart+"'

";

}

if(dtEndHasValue&&dtEndValue!=DateTimeMinValue)

{

sql+="

and

[Field]<='"+dtEnd+"'

";

}

return

GetTable(sql,connStr);

}

private

DataTable

GetTable(string

sql,string

connectionString)

{

DataTable

table

=

null;

var

conn

=

new

SqlConnection(connectionStrng);

try

{

connOpen();

var

cmd

=

new

SqlCommand(sql,conn);

var

sqlAdapter

=

new

SqlAdapter();

table

=

new

DataTable();

sqlAdapercommand

=

cmd;

sqlAdapterFill(table);

}

catch(Exceiption

ex)

{

throw

nex

Exception(ex);

}

finally

{

connClose();

return

table;

}

}

C#实现

般都差

用ORM

更简单

sql

实现

更简单

select

from

tablename

where

time

between(time1,time2);

如果数据库中对应的数据库字段类型为datetime类型,那么查询时间是最好使用Datediff函数来判断,而不是直接用大于小于等,比如

2016-01-22 11:12:07

2016-01-21 23:12:07

2016-01-21 1:1:07

如果你的区间是按照天为单位那么可以用

DATEDIFF(d,datevalue,GETDATE())>0 代表比今天早的数据

DATEDIFF(d,datevalue,GETDATE()) BETWEEN -5 AND 5

代表数据距今天前后5天的数据

下面以比较流行的mysql图形化管理工具Navicat为例,其他工具或者在命令行中以及编程语言中 *** 作时的执行的sql语句是一样的。

1、假设在数据库中有一个名为testtest的表格,表格内容如下图所示,表中有三条记录是9月份的

2、打开一个查询窗口,输入查询语句select from testtest where month(date)='9';,该语句表示查询testtest表格中9月份的记录

3、点击“运行”执行该sql语句,在下方可以看到已经查询到了9月份的三条记录

4、如需按年查询可输入select from testtest where year(date)='2017';,2017代表需要查询的年份。如下图所示只查询到了一条记录是2017年的

select from table

where CDate(Format(年月日,"yyyy-mm-dd")+时分秒)>CDate('2012-01-01 19:00:00')

and CDate(Format(年月日,"yyyy-mm-dd")+时分秒)<CDate('2012-01-04 10:00:00')

sql server 中,

可以用cast()函数将日期时间转换为日期,

比如:cast('2014-01-22 13:22:35000' as date) 的结果为2014-01-22

以下语句是查询2012年的数据,日期范围可以修改

select 表名

where CAST(时间字段 as date) between '2012-01-01' and '2012-12-31'

如果要查全年数据,也可以这样,

select 表名 where year(时间字段)=2012

另外,用convert()函数也可以将日期时间字段转换为日期字段来代替cast,具体用法baidu一下

如果是oracle数据库请用to_date()代替cast将日期时间字段转换为日期来查询

祝你成功!

以上就是关于c# winform按日期查找sql数据库全部的内容,包括:c# winform按日期查找sql数据库、C#中根据时间区间查询SQL数据库中的内容,并显示在GridView中(webform)、在MySql中、怎样根据年份或者月份查询数据表中的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/sjk/10170162.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存