> 백엔드 개발 > PHP 튜토리얼 > php查询sql取值再查询问题

php查询sql取值再查询问题

WBOY
풀어 주다: 2016-06-20 12:33:20
원래의
962명이 탐색했습니다.

B表
id  title
1   你好
2   我好
3   大家好
$arr =你好,我好,大家好;中间是逗号隔开
然后我想通过$arr的值 查询B表 对应的title的id
怎么写查询?
效果大概是这样:
$arr =你好,我好,大家好;
SELECT * FROM B表 WHERE title=$arr
输出结果为:
你好我的id为1
我好我的id为2
大家好我的id为3


回复讨论(解决方案)

将$arr =你好,我好,大家好;用   $array=implode(',',$arr);函数按逗号分隔开,然后放进一个数组中比如$array.
然后SELECT * FROM B表 WHERE title in ($array);
然后用foreach遍历,按格式取出结果就可以了

缺少引号怎么弄呢?SELECT * FROM B表 WHERE title in ($array);   应该是in ('你好','我好','大家好'),现在是(你好,我好,大家好)

create temporary table T  select 1 as id, '你好' as title  union select 2, '我好'  union select 3, '大家好';select * from T where find_in_set(title, '我好,你好,大家好')
로그인 후 복사
id title 1  你好 2  我好 3  大家好 
로그인 후 복사
还可以排序
select * from T where find_in_set(title, '我好,你好,大家好') order by find_in_set(title, '我好,你好,大家好');
로그인 후 복사
id title 2  我好 1  你好 3  大家好 
로그인 후 복사

<?php $arr="你好,我好,大家好";$array=explode(',',$arr);print_r($array);echo "<br>";for($i=1;$i<=sizeof($array);$i++){	$array[$i-1]='\''.$array[$i-1].'\'';}print_r($array);echo "<br>";$array=implode(',',$array);$str = "select * from 表B where titile in ($array);";echo $str;?>
로그인 후 복사


运行结果为
Array ( [0] => 你好 [1] => 我好 [2] => 大家好 )
Array ( [0] => '你好' [1] => '我好' [2] => '大家好' )
select * from 表B where titile in ('你好','我好','大家好');

昨晚上说错了,用explode,,希望能帮到您

$arr="你好,我好,大家好";$array=explode(',',$arr);print_r($array);echo "<br>";for($i=1;$i<=sizeof($array);$i++){	$array[$i-1]='\''.$array[$i-1].'\'';}print_r($array);echo "<br>";$array=implode(',',$array);echo $array;echo "<br>";$str = "select * from 表B where titile in ($array);";echo $str;
로그인 후 복사


分隔字符串是explode,合并数组是implode,分隔之后,每一位的两边加上引号,然后在重新合并回来。

运行结果为
Array ( [0] => 你好 [1] => 我好 [2] => 大家好 )
Array ( [0] => '你好' [1] => '我好' [2] => '大家好' )
'你好','我好','大家好'
select * from 表B where titile in ('你好','我好','大家好');

不知道是不是满足你的要求,嘿嘿

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿