以前没有使用过sql server数据库,请教在这个库中的sql语句怎么写(50分)

  • 主题发起人 主题发起人 lmax
  • 开始时间 开始时间
L

lmax

Unregistered / Unconfirmed
GUEST, unregistred user!
表中有一个字段enddate是datetime类型。
执行下面语句:
select distinct enddate from LC_BalanceSheet
得到的结果是
2003-09-30 00:00:00.000
样子的数据
问题:
1、我怎么写查询语句得到的结果是2003-09-30的格式,同时需要转换成字符串,应为我要把它放到combobox中
2、如果用户选择了2003-09-30这个选项,我怎么将2003-09-30转换成数据库认识的datetime类型,如:2003-09-30 00:00:00.000,然后查询符合这个日期的数据

总结上面:实际就是在SQL Server中的日期类型如何转换成带格式的字符串,字符转怎么转换成数据库中的日期型。

谢谢,我着急用。
 
你在但出来的时候,用格式,
select DateFormat(distinct enddate [,-])from LC_BalanceSheet
在使用的时候,直接用数据里的数据,
 
to:一份子
你的语句不对,执行后系统提示 第 1 行: '-' 附近有语法错误。

另外:怎么将字符串的日期转化成datatime,我还要在数据库中按照条件查询呢
 
读取出来可以用delphi得函数 Formatdatetime('YYYY-MM-DD',日期)先取出日期,再转换,也可以用SQL SERVER里面得函数CONVERT 先转换个这样得格式,再取出
查询时可以直接用取出得字符串当作日期进行查询
 
1.select distinct convert(varchar(10),enddate,120) as enddate from LC_BalanceSheet
2.strtodatetime(str)
 
还有一个问题是:
enddate字段中存在
2001-12-31
2002-12-31
2003-12-31
2006-12-31
日期数据,现在我想通过select enddate from LC_BalanceSheet where enddate like '%12-31'语句查询出全部12-31的数据,怎么执行后得不到结果
 
enddate不是字符串形式 所以要用convert(varchar(10),enddate,120) 转换成字符串才能用like '%12-31'
 
问题解决了,谢谢大家
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部