ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[原创] 跟我学SQL in Excel

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2022-8-21 17:56 | 显示全部楼层
本帖已被收录到知识树中,索引项:SQL应用
练习体会:sum()
一、select sum(比如金额) from 语句的执行结果是一个字段的总合计数值。二、select 字段1 字段2 字段3 sum(比如金额) from 语句的执行结果是对3个字段的金额明细的分类汇总,即分组统计。三、sum(金额1,金额2,金额3)语句是错误的表达式,它并不能对这三个字段的金额进行合计以产生新的字段。要对不同字段数值合计产生新字段应当采用小学生加法,如 金额1+金额2+金额3
注:前面举例计算字段均未使用 as 产生字段新名称

TA的精华主题

TA的得分主题

发表于 2022-11-18 09:42 | 显示全部楼层
ctp_119 发表于 2013-11-4 08:32
实例十六:update
更新语句:update [成绩表$] set 学科=’English’ where 学科=’英语’
解析:更新语 ...

版主好,有难事求你
SET jdlb.交易号 = zfb.交易号, jdlb.商家订单号 = zfb.商家订单号, jdlb.最近修改时间 = mid(zfb.最近修改时间,1,10), jdlb.金额 = (select sum(zfb.金额) form jdlb,zfb where (InStr(zfb.商家订单号,jdlb.原始线上订单号) or InStr(zfb.商品名称,jdlb.原始线上订单号))) , jdlb.成功退款 = zfb.成功退款, jdlb.回款位置 = zfb.支付宝名称 & '支付宝' & zfb.ID,jdlb.回款类型 = iif(jdlb.接单金额=zfb.金额 ,'结清','未结清')"

TA的精华主题

TA的得分主题

发表于 2023-3-24 20:38 | 显示全部楼层
ctp_119 发表于 2013-12-23 08:22
哈哈……你看看group by 起什么作用?它是分组的,你来个数量,不求和,换句话说,就是要明细,而group b ...

一个强大的知识点,既想明细同时又想要对明细的汇总,表格的一行怎么能显示呢?罗辑不通自相予盾。我常犯这个错误。主要原因就是看得多却懒得动手,凭空憶想最会犯这种错觉。大脑的能力是有限的。动手做练习才能掌握技术。

TA的精华主题

TA的得分主题

发表于 2023-3-24 21:15 | 显示全部楼层
ctp_119 发表于 2013-11-16 08:30
感觉你体会的不错,但是,一旦出错,你也很难查出原因哟!!!呵呵,不知你有否这方面的体会。一旦出错, ...

做了一个加载宏,有一个功能是单击按钮,为多工作簿的多工作表创建一个透视表,去年就基本完成能用了。殊不知,今年发现了一个致命错误,不能创建透视表,提示“1004,至少一个参数没有被指定值”。经过二个星期的时间的不断排查,才发现原因。

TA的精华主题

TA的得分主题

发表于 2023-3-24 21:27 | 显示全部楼层
OKJSJSF 发表于 2023-3-24 21:15
做了一个加载宏,有一个功能是单击按钮,为多工作簿的多工作表创建一个透视表,去年就基本完成能用了。殊 ...

我的程序过程是:用户打开一个工作簿,单击按钮,用户点击第一个列标题单击格,程序获取工作簿路径、名称、数据区域地址,再弹出一个数据源选择窗体,让用户进行勾选,默认是全选的。用户如直接关闭窗体,程序按所有簿、表创建透视表。用户如不选择,单击窗体中的确定按钮,程序也按所有簿、表创建透视表。用户如对其中部份簿、表进行取舍,再单击窗体中的确定按钮,程序按勾选的项目创建透视表。

TA的精华主题

TA的得分主题

发表于 2023-3-24 21:45 | 显示全部楼层
OKJSJSF 发表于 2023-3-24 21:27
我的程序过程是:用户打开一个工作簿,单击按钮,用户点击第一个列标题单击格,程序获取工作簿路径、名称 ...

危险来了,去年能用的,今年不能用!程序是通过缓存创建的透视表,出错语句总停顿在透视表创建的语句上:set pt=pc.createpivottable( , , , )。四个参数都用上,仍然报错。只要关闭数据源挑选窗体,执行就不会出错,只要单击确定按钮,就有时错有时不出错。不管怎么增减工作簿与列标题,都不能解决。程序的区别是关闭窗体时,程序执行过程中的SQL语句中的表字段是软代码通配符星号*,而单击确定按钮时,SQL语句中表字段是硬代码:一个一个的列标题。仔细想想,SQL语句并不会超过30000个字符,去年63个列标题的多工作簿不是照样正确执行吗?今年操作的是只有26个列标题的表呀!

TA的精华主题

TA的得分主题

发表于 2023-3-24 22:06 | 显示全部楼层
OKJSJSF 发表于 2023-3-24 21:27
我的程序过程是:用户打开一个工作簿,单击按钮,用户点击第一个列标题单击格,程序获取工作簿路径、名称 ...

通过一个个字段的依次增加,总于发现,问题出在列标题中的汉字是否之间的一个符号“/”。唉呀!崩溃啊!马上百度上HOME,太简单了,列标题加个中括号“[]”就搞定了。程序可以正常创建透视表了。但是,到底哪些符号会导致这个错误呢?我没办法一个个测试,新符号层出不穷呀?我试了下,数字不会,字母不会。列标题中常用的中文冒号括号不会,英文冒号括号就会,正斜杠与反斜杠不管中英文都会,百分号千分号还没试过。既然搞不清哪些符号会导致出错,就把SQL中的所有列标题都加上中括号吧。大家说是吗?世上的事咋就这么凑巧,去年的63个字段,没碰到一个带符号的,今年26个字段的,偏偏就遇上了。

TA的精华主题

TA的得分主题

发表于 2023-3-25 14:11 | 显示全部楼层
OKJSJSF 发表于 2023-3-24 22:06
通过一个个字段的依次增加,总于发现,问题出在列标题中的汉字是否之间的一个符号“/”。唉呀!崩溃啊! ...

原来 我要在家中也有。
image.jpg

image.jpg

TA的精华主题

TA的得分主题

发表于 2023-11-12 10:28 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
这位高手 本人再次跪谢
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-22 12:15 , Processed in 0.034728 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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