我需要帮助编写查询。使用此模式作为示例:
Table: A
id 1
id 2
Table: ALocalized
A_id 1, culture 1, name 'EN translation'
A_id 1, culture 2, name 'PT translation'
A_id 2, culture 1, name 'EN translation'
这是我用来本地化信息的架构。A上的每条记录在ALocalized上至少有一个相关记录,但可能有一些行没有针对某些文化的本地化记录。
在此示例中,我想查询A并按区域性 2 过滤ALocalized。如果区域性 2 不存在,则返回任何其他可用的。结果应该是:
A_id 1, culture 2, name 'PT translation'
A_id 2, culture 1, name 'EN translation'
我尝试使用子查询来连接两个表,但我认为我的问题出在where子句中。
where (ALocalized.culture = @cultureparameter OR ALocalized.culture = 1 OR ALocalized.culture = 2) limit 1
当 @cultureparameter 为 2 时返回文化 1。它不尊重 where 子句的顺序
我该怎么做?我试图避免使用循环来检查每个A记录是否存在ALocalized。
提前致谢