
select from leve a where aadd_date >= '2012-10-01' and aadd_date < '2012-11-01';
在postgresql中测试通过。时间是按范围查询,不是模糊。
CREATE TABLE table1 (
id INT,
name VARCHAR(8),
createdate DATE
);
INSERT INTO table1
SELECT 1, 'name1', TO_DATE('2013-12-12', 'YYYY-MM-DD') UNION ALL
SELECT 2, 'name2', TO_DATE('2013-12-13', 'YYYY-MM-DD') UNION ALL
SELECT 3, 'name2', TO_DATE('2013-12-14', 'YYYY-MM-DD') UNION ALL
SELECT 4, 'name2', TO_DATE('2013-12-15', 'YYYY-MM-DD') UNION ALL
SELECT 5, 'name2', TO_DATE('2013-12-15', 'YYYY-MM-DD') UNION ALL
SELECT 6, 'name2', TO_DATE('2013-12-12', 'YYYY-MM-DD');
SELECT DISTINCT
(SELECT COUNT(1) FROM table1 t2 WHERE t1createdate >= t2createdate) AS count,
createdate
FROM
table1 t1
ORDER BY
createdate;
count | createdate
-------+------------
2 | 2013-12-12
3 | 2013-12-13
4 | 2013-12-14
6 | 2013-12-15
(4 行记录)
PostgreqSQL中日期值可以和interval直接做加减运算。所以,只要把年龄转换成按年的interval值,就可以运算出结果了。示例:
select dv, age, dv - (age || ' year')::interval as ndfrom (
select '2014-10-21'::date as dv, 2 as age
) s;
david=# select extract(year from now());
date_part
-----------
2013
(1 row)
david=# 32 取月份
david=# select extract(month from now());
date_part
-----------
4
(1 row)
david=#
david=# select extract(day from timestamp '2013-04-13');
date_part
-----------
13
(1 row)
david=#
david=# SELECT EXTRACT(DAY FROM INTERVAL '40 days 1 minute');
date_part
-----------
40
(1 row)
david=# 33 查看今天是一年中的第几天
david=# select extract(doy from now());
date_part
-----------
102
(1 row)
david=# 34
查看现在距1970-01-01 00:00:00 UTC 的秒数
david=# select extract(epoch from now());
date_part
------------------
136575590794474
(1 row)
david=# 35 把epoch 值转换回时间戳
david=# SELECT TIMESTAMP WITH TIME ZONE 'epoch' + 1369755555 INTERVAL '1 second';
column
------------------------
2013-05-28 23:39:15+08
(1 row)
david=#
--取day
skytf=> select extract(day from now());
date_part
-----------
3
(1 row)
skytf=> select extract(day from timestamp '2011-06-03');
date_part
-----------
3
(1 row)
skytf=> select timestamp '2011-06-03';
timestamp
---------------------
2011-06-03 00:00:00
(1 row)
--取小时
skytf=> select extract (hour from now());
date_part
-----------
14
(1 row)
--取分钟
skytf=> select extract (minute from now());
date_part
以上就是关于PostgreSQL sql 时间模糊查询全部的内容,包括:PostgreSQL sql 时间模糊查询、postgreSQL:按日期查询、PostgreSQL 日期加减问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)