多表删除问题
一辆想出轨的无轨电车
一辆想出轨的无轨电车 2016-12-21 18:01:39
0
2
865

输入命令: SELECT a.goods_id,a.goods_name FROM tdb_goods AS a LEFT JOIN (SELECT goods_id,goods_name FROM tdb_goods GROUP BY goods_name HAVING COUNT(goods_name)>1) AS b  ON a.goods_name = b.goods_name ;

显示的是tdb_goods 的所有选项

但是在后面加上WHERE a.goods_id > b.goods_id,就只显示两条结果

 命令:SELECT a.goods_id,a.goods_name FROM tdb_goods AS a LEFT JOIN (SELECT goods_id,goods_name FROM tdb_goods GROUP BY goods_name HAVING COUNT(goods_name)>1) AS b  ON a.goods_name = b.goods_name WHERE a.goods_id > b.goods_id;

结果:

+----------+-------------------------+

| goods_id | goods_name              |

+----------+-------------------------+

|       26 |  HMZ-T3W 头戴显示设备

|       27 | 玄龙精英版 笔记本散热器

+----------+-------------------------+

2 rows in set (0.00 sec)

前后只是差了一个条件,如果把LEFT JION 改成RIGHT JION 或者 INNER JION 我都可以理解,就是LEFT JION 不明白,求各位大神指点迷津。


一辆想出轨的无轨电车
一辆想出轨的无轨电车

全部回覆(2)
数据分析师

多表刪除問題-PHP中文網問答-多表刪除問題-PHP中文網問答

圍觀一下哦,學習一下。

巴扎黑

因为where相当于对链接后的呈现的表再进行了一步操作:条件就是只展示a.goods_id>b.goods_id。根据子查询生成的b表本身只有两条数据(这两条数据本身就是tdb_goods中的重复数据,a中一定也存在而且一共为4条),其中符合进一步筛选条件的只有两条。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!