适用于WHERE的通配符?

时间:2012-04-13 00:48:15

标签: mysql search wildcard contains

我想设置执行此操作的代码:(*是通配符)

SELECT * FROM * WHERE * CONTAINS '$search-query';

我可以使用哪些MYSQL代码来实现此目的。

1 个答案:

答案 0 :(得分:2)

有一个名为anywhereindb的项目可以做你想做的事。


我不打算创建一个完整的解决方案,它需要很长时间,但是,我将创建一个你所谓的例子

SELECT * From `tablename` WHERE * CONTAINS `$search_query`

首先,让我们提取字段

$fields = array();
$query = "SELECT * FROM `yourtable` LIMIT 1;";
$result = mysql_query($query);
while ($i < mysql_num_fields($result)) {
    $info = mysql_fetch_field($result, $i);
    $fields[] = $info -> name;
}

现在准备您的查询

$query = "SELECT * FROM `table` WHERE";
foreach($fields as $index => $field) {
    $fields[$index] = $field." CONTAINS '$search_query'"
}
$query .= implode(" and ", $fields);
//Finally query
$result = mysql_query($query);