爱心人寿(Pgadmin上SQL语法):
---取字段的整数部分,不四舍五入
trunc(取值字段)
trunc(123.4)-----123
trunc(123.6)-----123
NUMERIC格式编辑
NUMERIC(P,S) P的默认值是:38 S的默认值是:-84~127
numeric(a,b)函数有两个参数,前面一个为总的位数,后面一个参数是小数点后的位数,例如numeric(5,2)是总位数为5,小数点后为2位的数,也就是说这个字段的整数位最大是3位。
---取字段的后几位:
select (cast(substr(to_timestamp('2017-11-10','YYYY-mm-dd'),1,4) as numeric)+1)||
substr(
cast(to_timestamp('2017-11-10','YYYY-mm-dd') as varchar)
,5,
length(cast(to_timestamp('2017-11-10','YYYY-mm-dd') as varchar))-5
);
---两个日期之间相隔秒数:
select extract(epoch from ( to_timestamp('2017-10-5','YYYY-mm-dd')- to_timestamp('2017-08-3','YYYY-mm-dd') ));
---取当前时间的三种写法:
select now(),current_timestamp,clock_timestamp();
---截取年/月/日
select extract(year from now());
---字符串转换为数值
select TO_NUMBER(TO_CHAR(to_timestamp('2017-10-5','YYYY-mm-dd'),'YYYY'),'999999')
---向下取整
floor( ),trunc( )
---向上取整
ceil( )
---使用指定的替换值替换NULL
COALESCE(a.uwidea,3) 【续:MySQL中还可以用IFNULL(a.uwidea,3)】
---年龄函数
age( t2.polapplydate ,t6.birthday)【=t2.polapplydate-t6.birthday】
---用一个字符串替换另一个字符串中的子字符串
replace( 'A BC ', ' ', '') ABC
网友评论