0

単一のレコードに対して次のことを行うために、PHP/MySQL クエリを実行しようとしています。

  1. users テーブルで「_abc」で終わる列名をすべて検索します
  2. 単一のレコード (つまり、user_id) のこれらのフィールドをクリアします。
  3. 残りの列のデータはそのままにしておきます

これまでデータベース情報スキーマで何もしたことがないので、どんな助けでも素晴らしいでしょう!

何かのようなもの...?

$sth = $dbh->prepare("DESCRIBE users
                      WHERE column_name LIKE '_abc'
                      AND id = $user_id");

$sth->execute();   
4

1 に答える 1

1
SELECT column_name
FROM information_schema.columns
WHERE table_schema = 'db_name'
AND table_name = 'users'
AND column_name like '%_abc';

次に、返された列名を更新ステートメントで使用します

update users 
set col1_abc = null, col2_abc = NULL
where id = $user_id
于 2012-10-28T12:38:22.720 に答える