所以我的MySQL数据库中有字符串:
字符串位于一行:
25 12 6 3 780
- 我想检查一下变量 $ data =' 6' ,是否在上面的字符串中;
如果为TRUE则返回数据的值,否则返回FALSE;
SELECT * FROM table_name WHERE column_name LIKE '%$data%'
不起作用,因为它返回所有字符串...
有什么想法吗?
答案 0 :(得分:2)
这将返回特定叮咬中确切数据存在的次数:
$query = "
SELECT COUNT(*) AS dataCount
FROM table_name t
WHERE FIND_IN_SET('".$data."',REPLACE(t.column_name,' ',',')) > 0";
$result=mysql_query("SELECT COUNT(*) AS dataCount FROM table_name t WHERE FIND_IN_SET('".$data."',REPLACE(t.column_name,' ',',')) > 0");
$data=mysql_fetch_assoc($result);
$value=$data['dataCount'];
这将返回精确数据所在的所有字符串:
$query = "
SELECT *
FROM table_name t
WHERE FIND_IN_SET('".$data."',REPLACE(t.column_name,' ',',')) > 0";
$result=mysql_query("SELECT * FROM table_name t WHERE FIND_IN_SET('".$data."',REPLACE(t.column_name,' ',',')) > 0");
$data=mysql_fetch_row($result);
答案 1 :(得分:0)
您可以使用if(exists(...))
select if (exists (SELECT *
FROM table_name
WHERE column_name LIKE '%$data%'), 1,0) ;