dp709369831 2016-05-16 05:35
浏览 31
已采纳

内爆值的Php查询

I have a table column where the value is an imploded value like this 5,9,1,6,4,8,2,24,14,3 now I want to run a query possibly like this SELECT * FROM table WHERE /* 1 is in array of (imploded_table_column)*/ Please I don't have a clue on how to run such query anyone with an idea or do I have to run the query in a long way like this:

$query = mysqli_query($con, "SELECT * FROM table");
$sql = mysqli_fetch_array($query);
$val = $sql['imploded_column'];
if(in_array('1', $val)){
    //run code here
}
  • 写回答

2条回答 默认 最新

  • dongyue9864 2016-05-16 05:46
    关注

    You can use IN or find_in_set to solve this problem if you want this as mysql.

    SELECT * FROM table WHERE 1 IN (imploded_column);
    SELECT * FROM table WHERE find_in_set(1, imploded_column);
    

    OR

    You can use in_array if you want it as PHP solution. Just explode the $sql['imploded_column'] so it will be an array, after that you can use in_array.

    $query = mysqli_query($con, "SELECT * FROM table");
    $sql = mysqli_fetch_array($query);
    $val = explode(",", $sql['imploded_column']);
    if(in_array('1', $val)){
        //run code here
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?
  • ¥15 有偿四位数,节约算法和扫描算法
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制
  • ¥20 Vs code Mac系统 PHP Debug调试环境配置
  • ¥60 大一项目课,微信小程序
  • ¥15 求视频摘要youtube和ovp数据集