0

SQL クエリを実行していて、名前に AND が含まれているテーブルからエントリを取得したいのですが、and だけが含まれている名前は必要ありません.....

紛らわしいですが、例を示します

テーブルには 2 つのエントリがあります。

  • パンドムニアム
  • フランクとビーンズ。

クエリを実行するときは、Pandomniam ではなく、Frank と Beans だけが表示されるようにします。私は次のようなことをしています

SELECT NAME FROM TABLE WHERE NAME LIKE '%and%'

これで結果が得られますが、不要なものがあります。

私の最初の本能は、結果で Pandomniam だけを取得できるかどうかを試してみることです。そのため、AND NOT LIKE を実行してそれらを除外できますが、1 つを思い付くことができないようです.

4

4 に答える 4

4
SELECT NAME FROM TABLE
WHERE
NAME LIKE '% and %' OR 
NAME LIKE 'and %' OR 
NAME LIKE '% and'
于 2009-09-24T23:55:34.970 に答える
3
SELECT NAME FROM TABLE WHERE NAME LIKE '% and %'
于 2009-09-24T23:53:04.080 に答える
2

いくつかのスペースを追加するのはどうですか:

SELECT NAME FROM TABLE WHERE NAME LIKE '% and %'
于 2009-09-24T23:53:06.123 に答える
1

使用している RDBMS のブランドはわかりません。MySQL は、RLIKE「単語境界」のメタ文字シーケンスを持つ正規表現述語をサポートしています。

SELECT NAME FROM TABLE WHERE NAME RLIKE '[[:<:]]and[[:>:]]'

MySQL 以外の別のブランドのデータベースを使用している場合は、おそらくその正規表現機能を調べることができます。

于 2009-09-25T00:40:51.300 に答える