JOIN语句是否正确?

时间:2017-05-19 08:31:03

标签: sql postgresql

我有SQL查询:

SELECT count(*) as total 
FROM ossn_users as u 
JOIN ossn_entities as e ON e.owner_guid=u.guid 
JOIN ossn_entities_metadata as emd ON emd.guid=e.guid 
WHERE(e.type='user' AND e.subtype='gender' AND emd.value='male' AND
      last_activity > 1495178076 - 100);

在具有相同数据的相同数据库上,它在MySQL中给出了正确答案2但在PostgreSQL中给出了错误答案0。

如何将此MySQL语句转换为正确的PostgreSQL语句?

感谢。

1 个答案:

答案 0 :(得分:0)

根据所有评论,一般建议是使用upperlower例如:lower(e.type)='user' AND lower(e.subtype)='gender' AND lower(emd.value)='male'

通过这种方式,您不必担心区分大小写。

(ps:由于声誉较低,无法发表评论)