私は解決策が欲しいという重大な問題を抱えています。フェッチレコードは、mysqlのvarcharとtextのデータ型で特異的でパワフルです。
データベースからレコードを取得したい。 例:私が検索しているとき鉛筆次に4レコードを取得し、検索するとき鉛筆次に15レコードを取得します。 しかし、PencilsやPencilで検索した場合、15レコードが必要です。
これは、MySQLのクエリです:
SELECT DISTINCT
gc_products.name,
gc_products.*,
LEAST(IFNULL(NULLIF(saleprice, 0), price),
price) AS sort_price
FROM
(`gc_products`)
JOIN
`gc_group_product` ON `gc_group_product`.`product_id` = `gc_products`.`id`
JOIN
`gc_category_products` ON `gc_category_products`.`product_id` = `gc_products`.`id`
JOIN
`gc_categories` ON `gc_categories`.`id` = `gc_category_products`.`category_id`
WHERE
`gc_products`.`enabled` = 1
AND `gc_group_product`.`group_id` = 5
AND (gc_products.name LIKE '%pencils%'
OR gc_products.description LIKE '%pencils%'
OR gc_products.excerpt LIKE '%pencils%'
OR gc_products.sku LIKE '%pencils%')
OR (gc_categories.name LIKE '%pencils%'
OR gc_categories.excerpt LIKE '%pencils%');
私は、これは (gc_products
)から、
SELECT DISTINCT
gc_products.name,
gc_products.*,
LEAST(IFNULL(NULLIF(saleprice, 0), price),
price) AS sort_price
を動作するか確認してください、私は返事を取得します
おかげ
あなたは 'pencils'の質問を表示しましたが、' pencil'はどうですか? –
検索するキーワードから「s」を削除することができます –
おそらく、[フルテキスト検索](http://dev.mysql.com/doc/refman/5.7/en/fulltext-search .html)? –