特定のテーブルでキーワードを検索し、そのキーワードのを返すPHPスクリプトを作成していますid
。
私がこれまでに行ったことは次のとおりです。
SELECT * FROM 'table' WHERE column_name LIKE '%keyword%'
これにより、キーワードの行全体が返されます。私が欲しいのは、その行のIDを返すだけのクエリなので、変数に入れることができます。
まず、引用符をバッククォートに置き換える必要'table'
があります。そうしないと、どこかで構文エラーが発生する可能性があります。残りのクエリ例では、テーブル名にバッククォートを使用しています。競合の可能性を減らすために、列名にもこれらを使用することをお勧めします。
を使用してすべての列をフェッチする代わりに、*
フェッチする列を明示的にリストします。
SELECT id FROM `table` WHERE column_name LIKE '%keyword%'
ワイルドカードは*
、元のクエリから気付いたようにすべての列を選択します。
他の列を選択する場合は、それらをコンマ区切りの名前としてリストします。
SELECT id, foo, bar FROM `table` WHERE column_name LIKE '%keyword%'
mySQLを使用しているので:
SELECT id FROM `table` WHERE column_name LIKE '%keyword%'