SQL时间转换脚本查询列表

关于日期格式转换:(MS-SQL部分,为避免浪费读者时间其它类型数据库的日期转换的问题,请大家绕道,谢谢)

笔者从事ERP系统相关工作,最近由于经常遇到日期格式转换的问题,虽然网上很多博文附带详细列表,但总不如放入系统随时查询方便快捷,用sql统计了下0--131个数据之间,可以正常转换的日期形式有37种,因此花了几分钟时间,简单写了以下脚本以飨读者

Create procedure up_ConvertTime
as
begin
declare @i int,@str varchar(max),@error int
if(OBJECT_ID(‘tempdb..#t‘) is not null) drop table #t
Create table #t(nID int ,dTime varchar(50) )
set @i=0
while(@i<=131)
begin--while
if(@i in(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,
21,22,23,24,25,101,102,103,104,105,
106,107,108,109,110,111,112,113,114,
121,127,131))
begin
if(@i=0)
set @str=‘select 输出格式=CONVERT(varchar,GETDATE(),‘+convert(varchar,@i)+‘),‘+‘参数值=‘+convert(varchar,@i)
else if(@i>0)
set @str=@str+‘ union all ‘+‘select CONVERT(varchar,GETDATE(),‘+convert(varchar,@i)+‘)‘+‘,‘+convert(varchar,@i)
end
set @i=@i+1
end--while
print @str
execute(@str)
if(OBJECT_ID(‘tempdb..#t‘) is not null) drop table #t
end 

执行:exec up_ConvertTime

输出格式:

比如现在需要的格式为30行的格式

select convert(varchar,getdate(),110)

以上为本人亲测,如有疑问,烦请大家纠正,谢谢。

时间: 2024-10-09 10:09:01

SQL时间转换脚本查询列表的相关文章

sql 时间转换格式 convert(varchar(10),字段名,转换格式)

convert(varchar(10),字段名,转换格式) CONVERT(nvarchar(10),count_time,121)CONVERT为日期转换函数,一般就是在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到的函数的3个参数,第1个参数为,转换后的大小,第2个为转换日期的字段或函数,第3个为转换的格式. 具体如下:0 | 0 or 100 | mon dd yyyy hh:miAM(或P

SQL时间转换

convert(varchar(10),字段名,转换格式) CONVERT(nvarchar(10),count_time,121)CONVERT为日期转换函数,一般就是在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到的函数的3个参数,第1个参数为,转换后的大小,第2个为转换日期的字段或函数,第3个为转换的格式. 具体如下:0 | 0 or 100 | mon dd yyyy hh:miAM(或P

转 sql 时间转换格式 convert(varchar(10),字段名,转换格式)

convert(varchar(10),字段名,转换格式) CONVERT(nvarchar(10),count_time,121)CONVERT为日期转换函数,一般就是在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到的函数的3个参数,第1个参数为,转换后的大小,第2个为转换日期的字段或函数,第3个为转换的格式. 具体如下:0 | 0 or 100 | mon dd yyyy hh:miAM(或P

SQL 列 转换成 查询出来的 行

查询  每个学生 的  (姓名,语文,数学,英语,成绩)为列 表结构如下: student: 学生表 grade 成绩表 : 查询出如下效果: SQL如下: select s.name,a.* from student s, (select sid, max(CASE kemu WHEN '语文' THEN chengji ELSE 0 END) '语文', max(CASE kemu WHEN '数学' THEN chengji ELSE 0 END) '数学', max(CASE kemu

sql 时间转换问题 from_unixtime() UNIX_TIMESTAMP()

http://blog.csdn.net/test_soy/article/details/50328367 from_unixtime()是MySQL里的时间函数 date为需要处理的参数(该参数是Unix 时间戳),可以是字段名,也可以直接是Unix 时间戳字符串 后面的 '%Y%m%d' 主要是将返回值格式化 例如: mysql>SELECT FROM_UNIXTIME( 1249488000, '%Y%m%d' ) ->20071120 mysql>SELECT FROM_UNI

FW:Oracle之PL/SQL 时间转换

CREATE OR REPLACE FUNCTION TTD(V_DATE NUMBER) RETURN VARCHAR2 IS RESULT VARCHAR(100); BEGIN SELECT TO_CHAR(TO_DATE('1970-1-1 00:00:00', 'yyyy-mm-dd hh24:mi:ss') + V_DATE / 3600 / 24 + 8 / 24, 'yyyy-mm-dd hh24:mi') INTO RESULT FROM DUAL; RETURN(RESULT

sql点滴42—mysql中的时间转换

UNIX时间戳转换为日期用函数: FROM_UNIXTIME() select FROM_UNIXTIME(1156219870); 日期转换为UNIX时间戳用函数: UNIX_TIMESTAMP() Select UNIX_TIMESTAMP(’2006-11-04 12:23:00′); 例:mysql查询当天的记录数: $sql=”select * from message Where DATE_FORMAT(FROM_UNIXTIME(chattime),’%Y-%m-%d’) = DA

SQL查询列表中每种类型的第一条

SQL查询列表中每种类型的第一条 SELECT * FROM NewsReport AS T WHERE ID IN (SELECT TOP 1 ID FROM NewsReport WHERE TypeID=T.TypeID and IsDeleted = 0 ORDER BY ID DESC )  SQL子查询,类型名字,加分页 select * from (select ROW_NUMBER() over(order by CreateTime desc) as number,ID,Nam

SQL Server查询优化方法(查询速度慢的原因很多,常见如下几种) .

SQL Server查询优化方法(查询速度慢的原因很多,常见如下几种) 标签: sql server优化数据库服务器 2014-12-31 10:13 11988人阅读 评论(0) 收藏 举报 本文章已收录于: 今天看到一位博友的文章,觉得不错,转载一下,希望对大家有帮助,更多文章,请访问:http://blog.haoitsoft.com 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存