当前位置:首页 > Web开发 > 正文

$date ) -field(‘name‘ ) - select(); foreach ( $ddd as $key

2024-03-31 Web开发

      public function showname() { $date = date(‘Y-m-d‘); $ddd=Db::table(‘xinguan‘) ->where(‘date‘,‘=‘, $date) ->field(‘name‘) ->select(false); $data= Db::table(‘name‘) ->field(‘user_name‘) ->whereNotIn(‘user_name‘,$ddd) ->select(false); //不盘问,直接输出SQL return $data; }  

理论输出SQL语句

SELECT `user_name` FROM `name` WHERE `user_name` NOT IN (SELECT `name` FROM `xinguan` WHERE `date` = ‘2020-02-15‘)

实际输出的SQL语句是

SELECT `user_name` FROM `name` WHERE `user_name` NOT IN (‘SELECT `name` FROM `xinguan` WHERE `date` = \‘2020-02-15\‘‘)

明显的上面的语句有问题.

没步伐只能先把第一盘问先运行并遍历生成一个数组赋值给第二盘问

public function showname() { $date = date(‘Y-m-d‘); $ddd=Db::table(‘xinguan‘) ->where(‘date‘,‘=‘, $date) ->field(‘name‘) ->select(); foreach ($ddd as $key=>$value){ $arr[$key]=$value[‘name‘]; } $data= Db::table(‘name‘) ->field(‘user_name‘) ->whereNotIn(‘user_name‘,$arr) ->select(); return $data; }

Thinkphp子盘问踩的坑

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/30100.html