DB üzerinde tam metin araması yapan bir arama sorgum var. Ben 'Cardozo, Horacio' veya 'Cardozo' veya 'horacio' aradığınız zamanMySQL tam metin arama birden çok sütun üzerinde: sonuç karışıklığı
$sql = "SELECT
*
FROM
`tbl_auction_listing` AS `al`
JOIN
`tbl_user` AS `u` ON `al`.`user_id` = `u`.`user_id`
LEFT JOIN
`tbl_gallery_details` AS `gd` ON `al`.`user_id` = `gd`.`user_id`
LEFT JOIN
`tbl_self_represented_details` AS `sr` ON `u`.`user_id` = `sr`.`user_id`
WHERE
`al`.`status` = '" . ACTIVE . "'
AND
`al`.`start_date` < NOW()
AND
`al`.`end_date` > NOW()
AND
MATCH(`al`.`listing_title`,
`al`.`description`,
`al`.`provenance`,
`al`.`title`,
`al`.`artist_full_name`,
`al`.`artist_first_name`,
`al`.`artist_last_name`,
`sr`.`artist_name`,
`gd`.`gallery_name`,
`u`.`username`) AGAINST('$search_query' IN BOOLEAN MODE)";
Ben hiçbir sonuç ancak artist_full_name = Cardozo, Horacio ile db 2 kayıtlarla bir sanatçı olduğunu biliyorum olsun.
Bütün MAÇ alanlarını kaldırmak ve sadece al
varsa
artist_full_name
2 sonuç alacağım.
al
'da eklerseniz.
description
1 sonuç aldım çünkü 'Horacio Cardozo' açıklamasında var.
herhangi koşul (herhangi bir arama sorgusu kelime) MAÇ alanların herhangi birinde bir araya geldi eğer arama tüm kayıtları döndürmek için bir yol var mı? IN BOOLEAN MODU'nu kaldırmayı denedim ama aynı sonuçları üretti.
yerine 'BOOLE MODE' İÇİNDE, DOĞAL DİL MODE' –
İÇİNDE' denemek 'DOĞAL DİL MODE' varsayılan moddur İÇİNDE – RandomSeed
Hala 0 sonuçlar üretir.DB'deki tüm alanların tam metin olduğunu ve hala hiçbir şey olmadığını kontrol ettim. – puks1978