ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1959|回复: 11

[求助] sql问题

[复制链接]

TA的精华主题

TA的得分主题

发表于 2014-3-18 22:57 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
用max能得出结果,要是加上前头的就提示查询不到表格,

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-3-18 22:58 | 显示全部楼层
忘了发附件啦,

Desktop11.rar

75.81 KB, 下载次数: 1

TA的精华主题

TA的得分主题

发表于 2014-3-18 23:41 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
你的工作簿:“查询结果表.xlsx”   SQL语句那么多,你具体是说“加上前头的”是指什么呀?
你其实只需要在工作簿:“数据透视表SQL语句入门(上1).xls” 把要解决的SQL语句写出来,然后把能执行的与不执行分别写出来就可以了。这样更方便他人理解。

TA的精华主题

TA的得分主题

发表于 2014-3-19 00:21 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
你是不是说这语句:
  1. Select 日期,数量 from [材料进货明细表$] where 数量=(select max(数量) as 最大值 from [材料进货明细表$] where 定额名称="镀管" and 规格="DN65")
复制代码
执行不了,还是?
这语句是可以执行的,但你目的是什么,这是把数量与对应最大值相等的 数量 与 日期 信息都找出来

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-3-19 09:15 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
dengjq2000 发表于 2014-3-19 00:21
你是不是说这语句:执行不了,还是?
这语句是可以执行的,但你目的是什么,这是把数量与对应最大值相等的 ...

是的,放到一个工作簿的话,执行不了,是有两个语句的:SELECT * FROM [材料进货明细表$A1:F10] where 数量=(select max(数量) as 最大值 from[材料进货明细表$A1:F10] where 定额名称="镀管" and 规格="DN65")

另一个select max(数量) as 最大值 from[材料进货明细表$A1:F10]) where 定额名称="镀管" and 规格="DN65"
这两个是要分开来工作簿执行吗?

TA的精华主题

TA的得分主题

发表于 2014-3-19 09:35 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
我这是可以执行的。
你是不是说跨工作簿的问题哟

数据透视表SQL语句入门.rar

31.17 KB, 下载次数: 13

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-3-19 10:54 | 显示全部楼层
dengjq2000 发表于 2014-3-19 09:35
我这是可以执行的。
你是不是说跨工作簿的问题哟

我试了,你的这个可以,但是不是我要的结果啊,Select 日期,数量 from [材料进货明细表$] where 数量=(select max(数量) as 最大值 from [材料进货明细表$] where 定额名称="镀管" and 规格="DN65")
我要的结果是:镀管DN65的最大值的整行记录显示出来,我把日期,数量改成了*,但是也不可以呢,
Select * from [材料进货明细表$] where 数量=(select max(数量) as 最大值 from [材料进货明细表$] where 定额名称="镀管" and 规格="DN65")
是不是语句有问题呢?

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-3-19 11:16 | 显示全部楼层
dengjq2000 发表于 2014-3-19 09:35
我这是可以执行的。
你是不是说跨工作簿的问题哟

Select 日期,数量 from [材料进货明细表$],(select max(数量) as 最大值 from [材料进货明细表$] where 定额名称="镀管" and 规格="DN65")B where 数量=最大值
斑竹,请问一下,这个没看明白,有没有sql语句方面的具体介绍,请给了链接好吗?我没找到的。

TA的精华主题

TA的得分主题

发表于 2014-3-19 11:17 | 显示全部楼层
所以我问你的目的是什么,是不是我6楼附件工作表:Sheet3那样的效果?
  1. select  top 1 * from [材料进货明细表$A:F] where 定额名称="镀管" and 规格="DN65" order by 数量 desc
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-3-19 11:19 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
dengjq2000 发表于 2014-3-19 11:17
所以我问你的目的是什么,是不是我6楼附件工作表:Sheet3那样的效果?

对的,是sheet3   ,谢谢斑竹,
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-27 13:38 , Processed in 0.039646 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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