❶ 如何sql2005查询多表某日数据量,并将结果以每张表名为列,对应表的数据量为值,写入一张EXCEL表里
统计昨天的数据量,如果你要査每天的就用个group日期
select 日期字段, 表01, 表02, 表03 from
((select convert(varchar(10), getdate() -1, 120) as 日期, count(1) as 表01
from 表1 where convert(varchar(10), 日期字段, 120) = convert(varchar(10), getdate()-1, 120)) tb1 inner join
(select convert(varchar(10),getdate()-1, 120) as 日期, count(1) as 表02
from 表2 where convert(varchar(10), 日期字段, 120) = convert(varchar(10), getdate()-1, 120)) tb2 on tbl1.日期字段=tb2.日期字段) inner join
(select convert(varchar(10), getdate()-1, 120) as 日期, count(1) as 表03
from 表3 where convert(varchar(10), 日期字段, 120) = convert(varchar(10), getdate()-1, 120)) tb3 on tb1.日期字段=tbl3.日期字段
❷ SQL2005里录入11位长的数值,字段应该是什么类型,还不能是科学计数法,谢谢了
可以为varchar(11)、char(11),使用的时候用cast或者convert函数进行转换即可
❸ sql server 2005 日期的convert函数
select CONVERT(Datetime,'20080701',120)
declare @t Datetime
select @t = CONVERT(Datetime,'20080701',120)
print(CONVERT(varchar(30),@t,120))
有问题的地方:
print(@date) 直接print一个没有转换过的Datetime格式,当然永远都是服务器默认格式了.
而且字符串'200807'也不满足转换要求,转出来的东西估计看不明白.
❹ sqlserver2005 用convert 将int转化为char 后 char的长度是多少 convert(char,123) 转化出来的 '123'
有点理解不了,不过你说的char默认的情况下是10,就你的题目而言就是长度就为三,可以用这样 select CONVERT(char(3),123),LEN('123')
❺ sql 2005中convert问题
select * from student where ssex='女' and (sbirthday<'1974-6-31' or sbirthday>'1975-12-31')
❻ sqlserver2005中怎样根据传进来的日期(例如:20091231)计算上一年的同一天的日期
if (year(convert(datetime,'20091231',120)) % 4=0 and year(convert(datetime,'20091231',120)) %100<>0) or (year(convert(datetime,'20091231',120)) % 4=0)
begin
select convert(datetime,'20091231',120)-366
end
else
begin
select convert(datetime,'20091231',120)-365
end
❼ 在sql server 2005存储过程中如何给时间变量赋值
declare @StartTime datetime --声明变量
set @StartTime =(select getdate())
select @StartTime
❽ sql server2005中怎么把默认值设成当前日期
getdate()函数:取得系统当前的日期和时间。返回值为datetime类型的。
用法:getdate()
例子:
select getdate() as dte,dateadd(day,-1,getdate()) as nowdat
输出结果:
dte nowdat
--------------------------- ---------------------------
1999-11-21 19:13:10.083 1999-11-20 19:13:10.083
(1 row(s) affected)