查询中的IF语句要求在两个表中使用相同的值

时间:2014-09-11 02:00:32

标签: mysql sql

我在查询中有一个IF语句,它连接了几个表。

SELECT * FROM specimen, topography_index, morphology, functions 
WHERE 
SUBSTRING(specimen.topography_index, 2, 2) = topography_index.topography_index_code 
AND 
IF(specimen.snop_axis = 'M', morphology.morphology_code = specimen.snop_code, functions.functions_code = specimen.snop_code) 
AND specimen_pk = '$specimen'

问题是如果specimen.snop_axis = 'F'functions.functions_code返回的值不在morphology.morphology_code中,则不会返回任何内容。

如何编写查询以便functonsmorphology表之间没有联接,以便相同的值不必在这些表中?

0 个答案:

没有答案