以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- left join 重复的数据如何排除? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=131011) |
-- 作者:lur320 -- 发布时间:2019/2/14 11:28:00 -- left join 重复的数据如何排除? 2个表。一个是产品编号、数量和销售国,第二个是主数据表,里面有 销售国和大洲。 第一个表只有1条数据,例如:产品编号11,数量99,销售国韩国。 在使用sqlcommand的left join或者inner join时,出现下面的错误 即第一个表只有1行数据。但是最后的结果是: 产品编号11,数量99,大洲亚洲 产品编号11,数量99,大洲亚洲 |
-- 作者:lur320 -- 发布时间:2019/2/14 11:36:00 -- 如何在sqlcommand里面实现跨表查询但是以第一个表为准呢? |
-- 作者:有点甜 -- 发布时间:2019/2/14 12:09:00 -- 比如你通过编号关联。表1有一行编号 001,表2有几行编号 001、001、003、004,连接以后,就有两行001数据,是正常情况啊。
请具体说明你需要得到什么效果? |
-- 作者:有点甜 -- 发布时间:2019/2/14 12:14:00 --
如果你只需查找一行数据过来,你需要用子查询。
具体做一个例子发上来测试 |
-- 作者:lur320 -- 发布时间:2019/2/14 12:14:00 -- 我只想得到表一的数据,表一有几行,就统计几行。然后增加一列查询到对应表2的其他列的数据。 |
-- 作者:有点甜 -- 发布时间:2019/2/14 12:21:00 -- 以下是引用lur320在2019/2/14 12:14:00的发言:
我只想得到表一的数据,表一有几行,就统计几行。然后增加一列查询到对应表2的其他列的数据。
你表2有多行001,那你需要哪一行的001的数据?
具体问题,做一个实例发上来测试,说明你要做到的效果。 |
-- 作者:lur320 -- 发布时间:2019/2/14 12:27:00 -- 我只要表一的1行001。而表2的多行001是重复的,选一行就可。 |
-- 作者:lur320 -- 发布时间:2019/2/14 13:00:00 -- 解决了。 sel@ct quantity, sono, continents fr@m {order} left J@IN (sel@ct DISTINCT continents,country from {masterdata}) b on {order}.country_of_customer =b.country
|