0

現在、カテゴリとして「SkönhetKroppsvårdMassageSpa」を含むデータベースアイテムがあります(1つの文字列)。

現在使用しています

     WHERE Select6 LIKE '%spa%'

私が欲しいのは、例えばを選択することです。「Spa」と「Spas」ではなく「Spa」を含むフィールドを取得します

4

5 に答える 5

1

次の条件を試してください。1つはテキスト内の任意の場所で単語スパをチェックし、もう1つは最後に単語スパをチェックします。

WHERE Select6 LIKE '% spa %' or Select6 LIKE '% spa' or Select6 LIKE 'spa' or Select6 LIKE 'spa %'
于 2012-03-05T17:41:12.413 に答える
1

最後に「%」を付けないでください。その記号は、「ここに任意の文字列」と言うのと同じです。したがって、%spa%を実行すると、途中のどこかにspaを含むすべての文字列に一致します。

すべての文字列があなたが言ったようにフォーマットされていて、検索語が常に最後にある場合は、「%spa」を実行してください。このようにして、「Spa」で終わる文字列が見つかります。

したがって、たとえば:WHERE Select6 LIKE'%Spa'

于 2012-03-05T17:41:54.420 に答える
0

あなたは試すことができます

WHERE Select6 LIKE '%spa%' AND NOT LIKE '%spas%'

これにはxxxxspaxxxxが必要ですが、xxxxspasxxxxは必要ありません

したがって、スパが最後の単語でも最初の単語でもない場合は機能します

または

WHERE Select6 LIKE'%spa%' OR Select6 LIKE'%spa' OR Select6 LIKE'spa%' OR Select6 LIKE'spa' OR

最後にスパ'% spa'

初めにスパ'spa %'

スパのみ'spa'

于 2012-03-05T17:42:42.233 に答える
0
  1. 位置の最後にある%を削除します。両側%が位置の終わりではなく単語で「スパ」を検索するため。

    ここで、Select6 LIKE'%Spa

@rsが好きです。トリムを忘れた場合は、その行もあるので、この方法を使用してください

 where Select6 LIKE '%Spa %' or Select6 LIKE '%Spa'
于 2012-03-05T17:50:22.137 に答える
-1

mySQL全文検索を調べてください。入るには時間がかかり、いくつかの注意点がありますが、それはおそらくあなたの要件を満たすための唯一の正しい方法です。

たとえば、ブール全文検索が機能するはずです。

SELECT * FROM articles WHERE MATCH (title,body)
AGAINST ('+Spa' IN BOOLEAN MODE);
于 2012-03-05T17:51:12.807 に答える