duanji2002 2018-08-10 01:59
浏览 24
已采纳

将mysql查询的结果用于新查询

I have this mysql table.

name    |     total
chris   |     5
jan     |     3
bob     |     2
eric    |     4

chris and jan were selected using this code

$query =  " select * from table where name = '$given_name' "; 
// &given_name = result from another query

I want to store the result of the query to a variable.

while($row=mysql_fetch_assoc($query)){
    $result = $row['name']; 
} // i want to store both chris and jan to $result

Then i will use the result of the query to another query. I want to select the remaining names. Not the ones on the first query. I want chris and jan not to be selected with this query because it is stored in $result

select * from table where name != $result ;

But one name was just stored in $result. I want them both to be stored in $result.

  • 写回答

3条回答 默认 最新

  • douqiao8370 2018-08-10 02:14
    关注

    You could use FIND_IN_SET to see if the names had been fetched before. Firstly you need to make $result an array of all the names:

    $result = array();
    while ($row=mysql_fetch_assoc($query)) {
         $result[] = $row['name']; 
    }
    

    Then you can write your query to exclude the names in $result:

    $sql = "SELECT * FROM table WHERE NOT FIND_IN_SET(name, '" . implode(',', $result) . "')";
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法