我正在搜索多个表格。
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条记录。
答案 0 :(得分:1)
假设country.iso2是一个独特的字段,我猜你每个员工有多个cv,反之亦然。
注意:避免对INNER JOIN使用comman表示法是个好建议。此外,这仅适用于field3非常为空而非NULL的情况。