需求大致如上:
假如有两张表,表order和表item
其中表order可以匹配多条表item的数据
但是表item的数据里有些数据的价格的有些为零有些不为零
现在需要输出order数据中有item的价格为0的数据
我用的是thinkphp3 代码如下:
$res=D('youzan_order')->alias('a')
->field('a.tid')
->join("cel_youzan_order_item b on a.tid=b.youzan_tid",'LEFT')
->where("a.tid='E20180608105403003500005' and b.points_price='0'")->select();
结果如下:
我只想要返回符合条件的order数据,不需要连item的数量也加进去
求大佬解答,谢谢
你这是一对多的关系,JOIN 之后肯定是有多条记录,如果你不关心 item 表的内容,可以加个
distinct(true)
去下重就可以了:或者用 exists 子查询,在 tp 里写起来麻烦一点。