我有桌子管理员,我有像date,phonenumber,user这样的列。
我想要检索记录,比如说我希望日期位于2014年1月1日至2014年1月31日之间的表中的电话号码。操作就像每天50到100个数字将被插入到表中我会喜欢查看在特定周或特定日期间隔中插入的数字。
我使用的是postgres,我的日期列是varchar类型。我试图在java Web应用程序中执行此操作,并使用jquery datepicker选择日期。
样本数据
Date Number user
01-01-2014 244548845 user1
02-01-2014 545454454 user2
05-01-2014 244540045 user1
10-01-2014 244540045 user1
20-01-2014 244540000 user2
当我选择01-01-2014到06-01-2014时,我想获取前3条记录
答案 0 :(得分:0)
SET DATESTYLE = "DMY, DMY";
SELECT
*
FROM
xxx
WHERE
Date::date BETWEEN '01-01-2014' AND '06-01-2014'
ORDER BY
Date::date
LIMIT
3;
另外,请注意使用类型日期来存储日期,而不是varchar!
答案 1 :(得分:0)
创建表时,应该将列作为日期提及(必须确保列名不是DATE)
例如:create table abc(dataentrydate Date not null);
并且为了根据日期检索记录,可以使用以下查询
SELECT * FROM abc WHERE dateentrydate BETWEEN '17-01-2014' AND '22-01-2014' ORDER BY dateentrydate;
非常感谢您提供的回复和帮助。