0

我在数据库中有一个表,其中包含一些字段,其中一个是“操作”

action 有 bse-similar,bse-action.....nse-similar,nse-action...等数据。

现在我想获取在其操作字段中具有“bse”的数据。

我怎么能在mysql中做到这一点??????

我想将此数据复制到另一个表中的另一件事。我怎样才能在简单的查询中做到这一点??????

4

3 回答 3

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 回答
1

使用模式匹配

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

SQL 模式匹配允许您使用“_”匹配任何单个字符,使用“%”匹配任意数量的字符(包括零个字符)。

于 2009-07-10T04:20:13.567 回答
0

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

这应该将 table1 中的“action”值插入到表 2 的“field1”列中。如果您正在搜索的值可能是大写或小写,那么请尝试这种方式,而不是假设您希望将大写和小写操作都与“bse”匹配。

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

于 2009-07-12T16:06:47.467 回答