设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

1234下一页
返回列表 发新帖
查看: 5834|回复: 39
打印 上一主题 下一主题

[查询] wuaza看过来:复杂问题简单化提问:这个查询怎样做?

[复制链接]
跳转到指定楼层
1#
发表于 2006-10-3 07:18:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


如何在查询中生成一个ID字段,每三条记录换一个ID号?

[此贴子已经被作者于2006-10-7 0:18:54编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-10-3 23:20:00 | 只看该作者
必须加入辅助列,如ID,自增

TRY:

SELECT d.*, c.tt
FROM (select a.bg,a.js,format(count(*),'0000') as tt from
(select bg,js from (
SELECT partition(id,1,
(SELECT COUNT(*) FROM 表1),3), mid(trim(partition(id,1,(SELECT COUNT(*) FROM 表1),3)),1,INSTR(TRIM(partition(id,1,(SELECT COUNT(*) FROM 表1),3)),':')-1) AS bg, trim(mid(trim(partition(id,1,(SELECT COUNT(*) FROM 表1),3)),
INSTR(TRIM(partition(id,1,(SELECT COUNT(*) FROM 表1),3)),':')+1,
len(str(id)))) AS js, *
FROM 表1
) group by bg,js ORDER BY VAL(BG),VAL(JS)) a
left join
(select bg,js from (
SELECT partition(id,1,
(SELECT COUNT(*) FROM 表1),3), mid(trim(partition(id,1,(SELECT COUNT(*) FROM 表1),3)),1,INSTR(TRIM(partition(id,1,(SELECT COUNT(*) FROM 表1),3)),':')-1) AS bg, trim(mid(trim(partition(id,1,(SELECT COUNT(*) FROM 表1),3)),
INSTR(TRIM(partition(id,1,(SELECT COUNT(*) FROM 表1),3)),':')+1,
len(str(id)))) AS js, *
FROM 表1
) group by bg,js ORDER BY VAL(BG),VAL(JS)) b
on VAL(a.js)>=VAL(b.js)
group by a.bg,a.js
ORDER BY VAL(A.BG),VAL(A.JS)) AS c LEFT JOIN 表1 AS d ON (d.id BETWEEN val(c.js) AND val(c.bg))
ORDER BY ID;


[此贴子已经被作者于2006-10-3 15:39:13编辑过]

3#
发表于 2006-10-3 23:42:00 | 只看该作者
实际上,用VBA解决更简单
4#
 楼主| 发表于 2006-10-4 03:30:00 | 只看该作者
再请教:vba怎做?是在窗口上做一个按钮,按钮的事件代码应怎写呢?
5#
 楼主| 发表于 2006-10-4 03:33:00 | 只看该作者
还有,你上面的sql语句不行,运行时会提示要输入ID和d.id参数值。
6#
发表于 2006-10-4 17:35:00 | 只看该作者
以下是引用cyber-bobo在2006-10-3 19:33:00的发言:
还有,你上面的sql语句不行,运行时会提示要输入ID和d.id参数值。

不知道你是怎样使用的,我在ACCESS2000-ACCESS2003下测试通过,前面已经讲过,要添加自增字段ID,检查你的表结构。
7#
 楼主| 发表于 2006-10-4 18:03:00 | 只看该作者

不行


我用的是ACCESS2000,运行时出现数据类型不匹配,麻烦你帮忙看看!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
8#
发表于 2006-10-4 18:13:00 | 只看该作者
以下是引用cyber-bobo在2006-10-4 10:03:00的发言:

我用的是ACCESS2000,运行时出现数据类型不匹配,麻烦你帮忙看看!

ID是自增类型!!!!,你仔细看看我的说明,真不知道你是怎样研究别人的答案的。
9#
发表于 2006-10-4 18:17:00 | 只看该作者

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
10#
 楼主| 发表于 2006-10-4 18:54:00 | 只看该作者
谢,正在研究,你不愧为SQL的高手!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-13 05:44 , Processed in 0.099632 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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