1

複数のテーブルを検索しています。

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

データベースで検索している価格値がありますが、価格が設定されていない場合はそのレコードを表示するチェックボックスもあります。

したがって、価格フィールドが空の場合でも、結果に表示されます。

上記を試してみましたが、テーブルに2つのレコードしかない100以上のレコードが得られます。

4

1 に答える 1

1

country.iso2が一意のフィールドであると仮定すると、従業員ごとに複数の履歴書があるか、またはその逆であると推測されます。

注:内部結合にコンマ表記を使用しないことをお勧めします。また、これは、field3が実際に空であり、NULLではない場合にのみ機能します。

于 2012-10-09T21:55:21.390 に答える