ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[原创] SQL转置练习,转置九式。【开贴】

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2012-3-27 16:10 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
香川群子 发表于 2012-3-26 21:11
经确认,转置6代码写法有问题,少了双引号。
应该为:

呵呵,那些语句不是用在vba代码里的,是直接在ole的编辑窗口里写入的,不需要用两个双引号。

TA的精华主题

TA的得分主题

发表于 2012-3-27 16:16 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 Saint_Zuo 于 2012-3-27 16:25 编辑

老师,我今天试验了一下,又有些地方不懂。
1、select dsum("a","sheet1$","b"='b1') as 求和 from [sheet1$]
一句在oledb中中可行,可是到了ms query中提示参数不足,期{是1。能否讲讲在oledb与ms query中写sql语句的语法区别呢?
2、dsum("a","sheet1$","b"='b1')  中的变量a为非数值型的会怎么求和呢?
3、dsum(a,"sheet1$","b"='b1') 以及dsum("a","sheet1$",b='b1') 中红色参数的意义又是什么呢?
4、excel -sql中能使用curdir函数吗?能的话该怎么用呢?我没有试成功。

TA的精华主题

TA的得分主题

发表于 2012-3-27 16:55 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
向高手学习!致敬!

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-3-27 17:01 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 wuxiang_123 于 2012-3-27 17:01 编辑
Saint_Zuo 发表于 2012-3-27 16:16
老师,我今天试验了一下,又有些地方不懂。
1、select dsum("a","sheet1$","b"='b1') as 求和 from [sheet ...


需要提供附件。
回答1:
如果你是在MQ中使用域聚合函数,那么,在参数中,请使用' '括住参数。在MQ环境下,域聚合函数中双引号表示文本,单引号为字段或表标识符,但是,不是在域聚合函数中,那么两者刚好相反,即双引号为字段或表的标识符,单引号为文本标识符。语法为:
域聚合函数('字段','原始表','条件')
在OLE DB环境下,在域聚合函数中,双引号和单引号是等价的,即既可为字段或表的标识符,也可为文本标识符,但通常我习惯用双引号表示字段或表,单引号表示文本。

回答2:
如果没有符合参数3(即条件部分)的记录则返回为NULL,结果为对NULL进行求和返回NULL,这样即使参数1(即要进行求和的字段)为文本也不会出错。

回答3:
你对应语法就可以知道。{:soso_e127:}其中a表示要进行域聚合函数的字段,如果a为数值或文本数值,可以不用加字段标示符(即双引号或单引号),否则必须使用字段标示符。对于条件,你可以想象成先输入条件,然后在最外层补充加上字段标示符就可以了。

回答4:在VBA中使用,不能在OLE DB中使用。

TA的精华主题

TA的得分主题

发表于 2012-3-27 17:32 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2012-3-27 17:52 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2012-3-27 22:23 | 显示全部楼层
wcymiss 发表于 2012-3-27 16:10
呵呵,那些语句不是用在vba代码里的,是直接在ole的编辑窗口里写入的,不需要用两个双引号。

哦。

那么,我现在确认到的事实是:

如果用在VBA代码的Sql语句中,需要使用两个双引号。

TA的精华主题

TA的得分主题

发表于 2012-3-28 09:56 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
好东西,学习了

TA的精华主题

TA的得分主题

发表于 2012-3-28 13:46 | 显示全部楼层
谢谢分享。。。。。。。。。。。

TA的精华主题

TA的得分主题

发表于 2012-3-28 16:09 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-25 12:23 , Processed in 0.038978 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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