如何从mysql数据库中检索句子中逗号分隔的所有值?

时间:2013-03-05 05:55:42

标签: php mysql

我有以下代码,其中我有一个文本区域,将输入作为单独的值并将其组合在一个句子中。例如,如果用户输入andheri bandra dadar然后存储在$ data中,那么它显示为andheri,bandra,dadar。文本区域自动填充意味着如果您输入'da',它将自动填充dadar

我尝试了跟随函数,然后搜索句子中的所有值,但它只是从句子中的第一个值,即andheri。请帮帮我。

//code
$sql=mysql_query("SELECT * FROM broker_property WHERE find_in_set(area,'$data')") or die(mysql_error())

这里area是mysql表中的一列,$data是包含所有以逗号分隔的子值的句子。

3 个答案:

答案 0 :(得分:0)

使用MySQL CONCAT_WS OR CONCAT子句帮助您加入字符串。

正式文件http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_concat-ws

示例

select * from broker_property where concat_ws(' ',area,$data) like 'CONDITIONS';

或者您也可以在where子句中使用相等检查。

答案 1 :(得分:0)

将每个单词用引号括起来然后使用

SELECT * FROM broker_property WHERE area IN ($data)

实施例

 SELECT * FROM broker_property WHERE area IN ("First","Second","Third")

答案 2 :(得分:0)

使用IN

$sql=mysql_query("SELECT * FROM broker_property WHERE area IN ('$data')");