MYSQL搜索表中的空字段

时间:2012-10-09 21:49:45

标签: mysql mysqli

我正在搜索多个表格。

SELECT DISTINCT cv.id, cv.tJobTitle, cv.tJobTitleAlt, cv.rEmployer, employee.firstName, employee.surname, cv.recentJobTitle, match ( cv.title, cv.recentJobTitle, cv.targetJobTitle, cv.targetJobTitleAlt ) AGAINST ('Desktop' IN BOOLEAN MODE) AS relevance 

FROM cv AS cv, employee AS employee, country AS country 

WHERE cv.showTo=1 AND cv.status=1 AND cv.employeeIDFK = employee.id AND cv.countryISO2FK='GB' 
AND cv.countryISO2FK=country.iso2 
AND match ( cv.title, cv.recentJobTitle, cv.targetJobTitle, cv.targetJobTitleAlt ) AGAINST ('Desktop' IN BOOLEAN MODE ) 
AND cv.salaryType='1' AND cv.salaryMax <=23088 OR cv.salaryMin is NUll 
ORDER BY relevance DESC

我有一个价格值,我在我的数据库中搜索,但我也有一个勾选框,说明价格是否设置显示该记录。

因此,如果价格字段为空,则仍显示在结果中。

我已经尝试了上述内容但它给了我更多的100条记录,其中我的表只有2条记录。

1 个答案:

答案 0 :(得分:1)

假设country.iso2是一个独特的字段,我猜你每个员工有多个cv,反之亦然。

注意:避免对INNER JOIN使用comman表示法是个好建议。此外,这仅适用于field3非常为空而非NULL的情况。