SQL获取时间函数
DATEDIFF(参数一,参数二,参数三) ---参数一:year month day; 参数二:比较的起始日期,默认1900-1-1;参数三:比较的日期。
eg:DATEDIFF(year,0,getdate())表示比较0(默认1900-1-1)到当前的日期想差几年
SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) -- 取得本月的第一天
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0) -- 取得本周的星期一
SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) -- 取得本年的第一天
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)) --上个月最后一天
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate())+1, 0)) --本月最后一天
SELECT dateadd(m,0,dateadd(yy,datediff(yy,0,getdate()),0)) --取得本年第一月
相关文档:
--sql server 2005
-- 1. 表结构信息查询
-- ========================================================================
-- 表结构信息查询
-- 邹建 2005.08(引用请保留此信息)
-- ========================================================================
SELECT
TableName=CASE WHEN ......
SELECT CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
SELECT CONVERT(varchar(100), GETDATE(), 1): 05/16/06
SELECT CONVERT(varchar(100), GETDATE(), 2): 06.05.16
SELECT CONVERT(varchar(100), GETDATE(), 3): 16/05/06
SELECT CONVERT(varchar(100), GETDATE(), 4): 16.05.06
SELECT CONVERT(varch ......
如果结果的长度大于服务器参数max_allowed_packet,字符串值函数返回NULL。见10.2.3 调节服务器参数。
对于针对字符串位置的操作,第一个位置被标记为1。
ASCII(str)
返回字符串str的最左面字符的ASCII代码值。如果str是空字符串,返回0。如果str是NULL,返回NULL。
mysql> select ASCII('2');
-> ......
CUBE 和 ROLLUP 之间的区别在于:
CUBE 生成的结果集显示了所选列中值的所有组合的聚合。
ROLLUP 生成的结果集显示了所选列中值的某一层次结构的聚合。
例子:
if object_id('a') is not null
drop table a
create table a
(
bm varchar(20), --编码
ck varchar(2), &n ......