sql语句简单记录
1.将查询出的表字段以逗号,分割
--将查询出的表字段以逗号,分割 select stuff((select ','+name from testOne for xml path('')),1,1,'') --stuff只是用于删除指定起点,指定长度的字符,然后在起点插入字符 --如上删除 从1开始1个长度的字符 --以上语句关键为for xml path(''),将查询转为xml --不用stuff可用其他方式处理
2. 时间处理
2.1.获取当前时间戳
SELECT DATEDIFF(s, '1970-01-01 00:00:00', GETUTCDATE());--获取当前时间戳
2.2.时间戳转时间类型,时间类型转时间戳
--时间戳转时间类型,时间类型转时间戳 --GMT和北京时间相差8小时所以需要加8小时用于显示北京时间 --两种方式 --1.1.计算时时间戳增加或减少8小时的秒数 --时间戳转时间类型:输出2018-08-08 08:08:48.000 SELECT DATEADD(S,1533686928 + 8 * 3600,'1970-01-01 00:00:00') --时间戳转成时间 --时间类型转时间戳:输出1533686928 SELECT DATEDIFF(S,'1970-01-01 00:00:00', '2018-08-08 08:08:48.000') - 8 * 3600 --时间转成时间戳 --1.2.修改计算的起点时间 --时间戳转时间类型:输出2018-08-08 08:08:48.000 SELECT DATEADD(S,1533686928,'1970-01-01 08:00:00') --时间戳转成时间 --时间类型转时间戳:输出1533686928 SELECT DATEDIFF(S,'1970-01-01 08:00:00', '2018-08-08 08:08:48.000') --时间转成时间戳
2.3.时间加减
--时间加减月份:2018-09-08 08:08:48.000
SELECT DATEADD(MONTH,1, '2018-08-08 08:08:48.000')
--时间戳转北京时间并增加月份:2018-09-08 08:08:48.000
SELECT DATEADD(MONTH,1,DATEADD(S,1533686928,'1970-01-01 08:00:00'))
--时间戳转北京时间增加月份再转回时间戳(用于计算下个月时使用):1536365328
SELECT DATEDIFF(S,'1970-01-01 08:00:00',DATEADD(MONTH,1,DATEADD(S,1533686928,'1970-01-01 08:00:00')))
浙公网安备 33010602011771号