0

データベースにテーブルがあり、その1つが「アクション」であるフィールドがいくつかあります。

アクションは、bse-similar、bse-action ..... nse-similar、nse-action...などのデータを持っています。

ここで、アクションフィールドに「bse」が含まれているデータをフェッチします。

どうすればmysqlでそれを行うことができますか?????

このデータを別のテーブルにコピーしたいもう1つのこと単純なクエリでそれを行うにはどうすればよいですか?????

4

3 に答える 3

1

パターンマッチングを使用する:

mysql> SELECT action FROM mytable WHERE action LIKE 'bse%';
+-------------+
| action      |
+-------------+
| bse-action  |
| bse-similar |
+-------------+

SQLパターンマッチングでは、「_」を使用して任意の1文字に一致させ、「%」を使用して任意の数の文字(ゼロ文字を含む)に一致させることができます。

于 2009-07-10T04:20:13.567 に答える
1
SELECT * FROM table WHERE action LIKE "bse-%"

または、PHPの場合:

mysql_connect($host, $user, $pass);
mysql_select_db($database);
$res = mysql_query("SELECT * FROM table WHERE action LIKE 'bse-%'");
while (($row = mysql_fetch_array($res)) != null)
{
    echo $row[0] . "<br />";
}

$ host、$ user、$ pass、および$ databaseに情報を入力するだけで、準備は完了です。

あなたは本当にこれらのチュートリアルを見る必要があります:

http://w3schools.com/php/php_mysql_intro.asp

:)

編集

INSERT INTO table2 (column1, columnx, action) SELECT column1, columnx, action FROM table1 WHERE action LIKE "bse-%"

あなたが探しているものでなければなりません

于 2009-07-10T04:17:08.253 に答える
0

INSERT INTO table2(field1)SELECT action FROM table1 WHERE action LIKE'bse%';

これにより、テーブル2の列「field1」にテーブル1の「action」の値が挿入されます。検索している値が大文字または小文字である可能性がある場合は、大文字と小文字の両方のアクションを「bse」と一致させたいと想定して、代わりにこの方法で試してください。

INSERT INTO table2(field1)SELECT action FROM table1 WHERE LOWER(action)LIKE'bse%';

于 2009-07-12T16:06:47.467 に答える