我有和两个值的数组,我想在选择查询中使用它与sql IN运算符.
这是我桌子的结构
id comp_id
1 2
2 3
3 1
Run Code Online (Sandbox Code Playgroud)
我有一个$arr有两个值的数组Array ( [0] => 1 [1] => 2 )
我想获取comp_id 1和comp_id 2的记录.所以我编写了以下查询.
SELECT * from table Where comp_id IN ($arr)
Run Code Online (Sandbox Code Playgroud)
但它不会返回结果.
我正在尝试使用数组查询MySQL数据库,但我遇到了麻烦!
我有一个名为clients的表,我希望能够从'sector'列等于$ sectorlink的所有行中选择'name'.
然后,我想将所有名称放入一个数组,以便我可以执行下一个查询:从另一个表中选择所有行,其"client"列等于第一个查询返回的名称之一.我做错了,因为它返回致命的SQL错误.我对所有变量感到困惑!
$ sectorlink和$ connection是在此代码之外定义的唯一变量
有什么建议?
$query1 = "SELECT name FROM clients WHERE sector = '$sectorlink'";
$clientresult = mysql_query($query1, $connection) or trigger_error("SQL", E_USER_ERROR);
while($row = mysql_fetch_array($clientresult)){
foreach($row AS $key => $value){$temp[] = '"'.$value.'"';}
$thelist = implode(",",$temp);
$query = "SELECT count(*) FROM studies WHERE client IN ($row) ORDER BY (date) desc";
$result = mysql_query($query, $connection) or trigger_error("SQL", E_USER_ERROR);
}
Run Code Online (Sandbox Code Playgroud) 我目前有一个值数组(business_id的)
让我们说吧
Array
(
[0] => 12
[1] => 14
[2] => 15
)
Run Code Online (Sandbox Code Playgroud)
使用这些值中的每一个从数据库中获取每个business_id的关联行信息的最佳方法是什么.
可以是一对一的查询是我的问题.显然,你可以做到
$q = "select * from business where business_id = 12";
$rs = mysql_query($q);
Run Code Online (Sandbox Code Playgroud)