ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: mps777

如何求出总量

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-3-12 15:42 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
mps777 发表于 2013-3-12 14:13
版主,我又遇到问题了,好像这种情况应该怎么处理呢?

纯SQL无法做到,在sql server2005环境中可以

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-3-12 15:59 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
wuxiang_123 发表于 2013-3-12 15:42
纯SQL无法做到,在sql server2005环境中可以

谢谢版主!!
版主,我这条语句不行呢?
为何计不出各区域的订单?.zip (6.06 KB, 下载次数: 20)

TA的精华主题

TA的得分主题

发表于 2013-3-13 10:48 | 显示全部楼层
mps777 发表于 2013-3-12 15:59
谢谢版主!!
版主,我这条语句不行呢?

Excel/ACCESS环境下SELECT语句:

SELECT {TOP} {DISTINCT} ,字段 FROM 表或查询
WHERE ……
GROUP BY ……
HAVING ……
ORDER BY ……

其执行顺序:
FROM-WHERE-GROUP BY-聚合函数-HAVING-SELECT -DISTINCT-ORDER BY-TOP

若有JOIN连接,则:
FROM-ON-JOIN-WHERE-其它同上。

你的语句:

  1. select distinct 区域,count(*) as 订单号 from [sheet1$A1:B19] group by 区域
复制代码

先执行了:

  1. select 区域,count(*) as 订单号 from [sheet1$A1:B19] group by 区域
复制代码
然后才用DISTINCT去重复,当然不行。
解决方法:
  1. SELECT 区域,COUNT(订单号) FROM
  2. (select DISTINCT 区域,订单号 from [sheet1$A1:B19])
  3. GROUP BY 区域
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-3-13 14:18 | 显示全部楼层
本帖最后由 mps777 于 2013-3-13 14:20 编辑
wuxiang_123 发表于 2013-3-13 10:48
Excel/ACCESS环境下SELECT语句:

SELECT {TOP} {DISTINCT} ,字段 FROM 表或查询


版主你说的这句
FROM-ON-JOIN-WHERE-
不是
FROM-JOIN-ON-WHERE-
吗?

哦,我明白了,是执行顺序,不是书写顺序

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-3-14 13:06 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
wuxiang_123 发表于 2013-3-13 10:48
Excel/ACCESS环境下SELECT语句:

SELECT {TOP} {DISTINCT} ,字段 FROM 表或查询

吴版大大……不好意思,又打扰你了,如果像附件里的又如何做啊?能不能说说思路啊,谢谢啦
还有在SQL能不能用&来连接作判断的?
取两夫妻的不重复值.zip (5.91 KB, 下载次数: 15)

TA的精华主题

TA的得分主题

发表于 2013-3-15 09:30 | 显示全部楼层
mps777 发表于 2013-3-14 13:06
吴版大大……不好意思,又打扰你了,如果像附件里的又如何做啊?能不能说说思路啊,谢谢啦
还有在SQL能不 ...

我的答案:
答案.png

所有可能情况表:
所有可能情况.png

Bo1.rar (7.02 KB, 下载次数: 20)


评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-3-30 23:12 | 显示全部楼层
本帖最后由 mps777 于 2013-3-30 23:13 编辑
wuxiang_123 发表于 2013-3-10 12:25
效果1:

效果2:


版主,在效果1里面的IIF(B.品名,'两表共有','台账2没有') 为什么要取b.品名,我用a.品名结果就不对了,请问这句话是怎样运行的?麻烦版主指点

TA的精华主题

TA的得分主题

发表于 2013-3-31 09:30 | 显示全部楼层
本帖最后由 wuxiang_123 于 2013-3-31 09:32 编辑
mps777 发表于 2013-3-30 23:12
版主,在效果1里面的IIF(B.品名,'两表共有','台账2没有') 为什么要取b.品名,我用a.品名结果就不对了, ...


LEFT JOIN返回左表全部记录,和右表符合关联条件的记录。右表中没有符合关联条件的记录,那么该左表部分对应的右表记录返回NULL。
IIF(B.品名,'两表共有','台账2没有')意思是如果右表返回的品名不是0,那么返回两表共有,否则是台账2没有。这个语句的愿意是判断右表的记录是否为空,如果为空,则说明右表不存在左表的记录,不为空,则说明同时存在于两表。
使用A.品名不对的原因是返回的是左表全部记录,也就是说A.品名必不为空(除非A.品名本身是空值),故使用A.品名无法判断记录是否同时在两表之中。

关于IIF中B.品名含义请参考:
http://club.excelhome.net/thread-833489-1-1.html

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-4-12 09:38 | 显示全部楼层
wuxiang_123 发表于 2013-3-31 09:30
LEFT JOIN返回左表全部记录,和右表符合关联条件的记录。右表中没有符合关联条件的记录,那么该左表部分 ...

吴版,我想请教一下:
语句一:
  1. select a.班级,a.姓名,a.语文,count(*) as 个数 from [sheet3$]a left join [sheet3$]b on a.班级=b.班级 and a.语文<b.语文 group by a.班级,a.姓名,a.语文
复制代码
这个语句与下面的语句有什么不同啊?运行是怎么运行的?
语句二:

  1. select a.班级,a.姓名,a.语文,count(*) as 个数 from [sheet3$]a,[sheet3$]b where a.班级=b.班级 and a.语文<b.语文 group by a.班级,a.姓名,a.语文
复制代码
为何2个语句得到的结果不一样呢?语句二少了几个人
我是从你这里看到,自己乱试的……
http://club.excelhome.net/thread-979148-4-1.html
yuga.zip (60.44 KB, 下载次数: 9)

点评

左链接,返回左表的全部记录,和右表符合关联条件的部分记录;多表查询,返回的是所有查询表符合关联条件的记录。  发表于 2013-4-12 09:43

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-4-17 22:53 | 显示全部楼层
wuxiang_123 发表于 2013-3-31 09:30
LEFT JOIN返回左表全部记录,和右表符合关联条件的记录。右表中没有符合关联条件的记录,那么该左表部分 ...

版主,在SQL里遇到一个问题,就是查找最近月份的价格,应该怎样做呢?麻烦版主指点一下,谢谢!

取最近的月份的价格.zip (10.9 KB, 下载次数: 25)
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-27 08:23 , Processed in 0.041693 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表