做什么?表有相似字段就不用合并了啊select max(num) from 表3
解决方案 »
- eclipse Helios在文件列表为什么没有explore files这个右键选项
- php 下拉菜单的二级联动问题
- !$_SESSION['level']==255 和 $_SESSION['level']!=255 不一样吗?
- 如何用javascript php调用mysql成功实现二级联动?
- 不错,可以加我QQ吗?332170065
- 关于提交后两个框架页面同时刷新问题
- PHP项目中有必要加入XML技术吗?加入有什么优点吗?
- 小弟菜鸟,求高手回答我这个弱智问题
- ?大型网站用PHP怎么架构?
- mysql版解决不了,希望这里有人看看吧,解决不了今晚睡不了
- 用PHP怎么改目录名
- 高分求一sql语句,关于3表联合update(只修改其中之一)
表ID是指什么?在另两个表中的id号?显示没有销售的用left join
是采用biao_id保存表1和表2的ID可以集体些嘛
union
select * from tt2 left join tt3 on tt3.biao_id=tt2.id and sign='B';看是否是你需要的。
( select tt1.id,tt1.name name,tt3.id,tt3.num from tt1 left join tt3 on tt3.biao_id=tt1.id and sign='A'
union
select tt2.id,tt2.name name,tt3.id,tt3.num from tt2 left join tt3 on tt3.biao_id=tt2.id and sign='B') x
group by name这样可以得到每种商品最大值
表1:储存商品;
表2:也是储存商品(这里属性不一样所以分开两个表)
表3:是销售统计表(被购买一个则记录商品ID和标志)下面表之间的关系:表1:
id name
1 电脑
2 鼠标
...........
..............
表2:
id name
1 CSDN图书
2 技术图书
3 漫画
............
.............表3:id biao_id(分别为表1和表2的id) name num(销售数量) sign(标志A为表1、B表2)
1 3 漫画 2 B
2 1 电脑 1 A
3 1 CSDN图书 3 B显示出来应该是这样的:CSDN图书
漫画
电脑
(后面两个是没有销售的,也显示在后面)
鼠标
技术图书
不知道你的表3会不会有同一个商品的两条记录?我上面那个可以改一下:
select name,max(num) mm from
( select tt1.id,tt1.name name,tt3.id,tt3.num from tt1 left join tt3 on tt3.biao_id=tt1.id and sign='A'
union
select tt2.id,tt2.name name,tt3.id,tt3.num from tt2 left join tt3 on tt3.biao_id=tt2.id and sign='B') x
group by name
order by mm desc这样是如果有同一商品的多条记录,显示的是最大的那条。====================
如果没有多条记录,
应该这样就可以了
select distinct name from
( select tt1.id,tt1.name name,tt3.id,tt3.num from tt1 left join tt3 on tt3.biao_id=tt1.id and sign='A'
union
select tt2.id,tt2.name name,tt3.id,tt3.num from tt2 left join tt3 on tt3.biao_id=tt2.id and sign='B') x
order by num desc;=====================
我在自己这里大概试了一下,语法没问题,但不知道是否完全符合你的要求。这个句子其实是3部分,
union前后两句其实是一样的,就是简单地分别把表1和表3,表2和表3联合起来,
你可以单独执行()内地语句看看结果就明白了外面的是以上面union的结果作为一个表,进行查询(相当于一个临时表)。有时候这样的语句可以适当简化或者优化一下。
显示表3内容完了。在根据表3判断。如果存在在表3中的内容。显示表1和表2就不显示了不知道上面写的是否可以实现我觉得应该不用tt3.biao_id=tt1.id and sign='A'直接把全部的内容放在一个表里。然后根据销售数量来排序了不知道这样构思是否可以显现因为上面没有实施过。所以我在这些写个思路先。有不对的。。请改正
QQ上我加你了