case when的计算列如何作为查询条件

w_xxxbbb 2015-02-02 06:49:41

SELECT remiandforcompany.remindid AS "提醒编号",
vw_defineremind.deptid AS "企业编号",
vw_defineremind.deptname AS "企业名称",
vw_defineremind.reminditemname AS "提醒项目名称",
remiandforcompany.duedate AS "到期日期",
vw_defineremind.reminddays AS "提醒天数",
CASE
WHEN (now()::date > remiandforcompany.duedate::date) THEN '超期'::text
WHEN (now()::date = remiandforcompany.duedate::date) THEN '到期'::text
WHEN (now()::date + ((vw_defineremind.reminddays::character varying(10)::text || ' day'::text)::interval)) > remiandforcompany.duedate::date THEN '即将到期'::text
ELSE NULL::text END AS "提醒", --这里有一个计算列,我想让它成为查询条件
remiandforcompany.truckcode AS "车牌号",
trucktb.reg_date AS "入户日期",
trucktb.servicecode AS "运营证编号",
trucktb.gps,
trucktb.truckownerid AS "车主编号",
trucktb.trailercode AS "挂车车牌",
trucktb.drivercard AS "行车证",
truckowner.truckownername AS "车主名",
truckowner.ownercode AS "车主身份证",
truckowner.tel AS "车主电话"
FROM vw_defineremind
JOIN remiandforcompany ON remiandforcompany.reminditemid = vw_defineremind.reminditemid AND remiandforcompany.deptid = vw_defineremind.deptid
JOIN trucktb ON remiandforcompany.truckcode::text = trucktb.truckcode::text
LEFT JOIN truckowner ON trucktb.truckownerid = truckowner.truckownerid where
提醒='超期';--我想让它成为查询条件
...全文
294 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
w_xxxbbb 2015-02-04
  • 打赏
  • 举报
回复
已解决。postgreSQL这个数据库很不错。就是用的人好像少些。

952

社区成员

发帖
与我相关
我的任务
社区描述
PostgreSQL相关内容讨论
sql数据库数据库架构 技术论坛(原bbs)
社区管理员
  • PostgreSQL社区
  • yang_z_1
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧