| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 811 人关注过本帖
标题:两个实际使用SQL中遇到的问题
只看楼主 加入收藏
bluesglass
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2009-11-7
结帖率:0
收藏
已结贴  问题点数:20 回复次数:9 
两个实际使用SQL中遇到的问题
求助一:
内容:如下的两张表,可以肯定的是这两张表里的公司是相同的,只是两表企业名输入的有差异。这里只是两个表的一小部分,这样的情况大约有十几万条记录。
表一:
企业名
北京市XXX公司
北京市YYY有限责任公司
昌平AAA实业集团

表二
企业名
北京XXX公司
北京市YYY有限公司
北京市昌平区AAA实业集团

目的:两表做比对,把相同的公司找出来,像上面的北京市XXX公司和北京XXX公司就是同一家公司。

问题:不知道这条SQL语句要如何写。


求助二:
内容:一张表,如下
表:
金额                      收款时间                         发出商品数量            发出时间          对方收到时间
10000                   20091010                          100                       20090101        20090124
10000                   20091010                          200                       20090201        20090321
10000                   20091010                          300                       20090301        20090405
10000                   20091010                          500                       20090401        20090501

目的:这是其中一部分,约十几万条这样的记录,这是两个表相连之后的结果,现在要做的是,前面的金额和收款时间不动,把后面的发出商品相加得到总数,发出时间保留最早的时间也,对方收到时间保留最后一个时间,也就是
金额                      收款时间                         发出商品数量            发出时间          对方收到时间
10000                   20091010                          1000                      20090101        20090501

问题:不知道这条SQL语句要如何写。

希望大家帮帮我。
搜索更多相关主题的帖子: SQL 
2009-11-07 11:18
不说也罢
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:39
帖 子:1481
专家分:4989
注 册:2007-10-7
收藏
得分:6 
一、select [表一].[企业名],[表二].[企业名] from [表一],[表二] where [表一].[企业名] = [表二].[企业名]

二、select [金额],[收款时间],sum([发出商品数量]) as [发出商品数量],min([发出时间]) as [发出时间],max([对方收到时间]) as [对方收到时间] from [表名] group by [金额],[收款时间]



===================================================
讨厌C#的行尾的小尾巴;和一对大括号{ }
===================================================
2009-11-07 12:00
bluesglass
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2009-11-7
收藏
得分:0 
回复 2楼 不说也罢
第一个,北京市XXX公司和北京XXX公司,差了一个市字,肯定是不会出现在结果里的,但是这两个确实是一个公司
2009-11-07 13:00
msgj
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:190
专家分:914
注 册:2009-10-3
收藏
得分:6 
就第一个问题,可以用like ‘北京%XXX%公司‘通配符进行筛选,但结果还是得手动确认。在实践应用中应该给每个企业编码的。
2009-11-07 14:33
bluesglass
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2009-11-7
收藏
得分:0 
拿到手的就是这样的两张表,没有编码,如果有编码就不这么烦恼了
2009-11-07 15:12
不说也罢
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:39
帖 子:1481
专家分:4989
注 册:2007-10-7
收藏
得分:0 
以下是引用bluesglass在2009-11-7 13:00:09的发言:

第一个,北京市XXX公司和北京XXX公司,差了一个市字,肯定是不会出现在结果里的,但是这两个确实是一个公司
先将“北京XXX公司”Update 为“北京市XXX公司”
或者
将“北京市XXX公司”Update 为“北京XXX公司”
然后再比较

===================================================
讨厌C#的行尾的小尾巴;和一对大括号{ }
===================================================
2009-11-07 17:08
bluesglass
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2009-11-7
收藏
得分:0 
以下是引用不说也罢在2009-11-7 17:08:04的发言:

先将“北京XXX公司”Update 为“北京市XXX公司”
或者
将“北京市XXX公司”Update 为“北京XXX公司”
然后再比较
不可能这样做的,因为数据量太大了,如果这样做的话,与我在SQL外用人工去核对没有什么区别了
2009-11-07 21:49
看春
Rank: 2
等 级:论坛游民
帖 子:6
专家分:17
注 册:2009-11-9
收藏
得分:6 
‘不说也罢’你就别说话了,根本不了解状况!
2009-11-09 13:08
不说也罢
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:39
帖 子:1481
专家分:4989
注 册:2007-10-7
收藏
得分:0 
以下是引用看春在2009-11-9 13:08:38的发言:

‘不说也罢’你就别说话了,根本不了解状况!

===================================================
讨厌C#的行尾的小尾巴;和一对大括号{ }
===================================================
2009-11-09 13:25
bluesglass
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2009-11-7
收藏
得分:0 
没事的没事的,该说就说,大家一起讨论嘛
2009-11-09 17:07
快速回复:两个实际使用SQL中遇到的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017435 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved