Ber*_*ant 4 postgresql stored-procedures plpgsql ranking postgresql-9.1
我需要按照真实的OR子句的数量对PostgreSQL查询的结果进行排序/排序.例如,给出一个类似的查询
SELECT * FROM mytable WHERE cond1 OR cond2 OR cond3 ORDER BY rank DESC
Run Code Online (Sandbox Code Playgroud)
应根据已满足条件的数量对结果进行排名.此外,非常欢迎使用视图/存储过程解决此问题的方法!
重复这些条件并添加它们:
SELECT * FROM mytable
WHERE fld = 'A' OR fldB = CURRENT_DATE OR fldC = 7
ORDER BY
(fld = 'A')::int + (fldB = CURRENT_DATE)::int + (fldC = 7)::int
DESC
Run Code Online (Sandbox Code Playgroud)