Office中国论坛/Access中国论坛

标题: 查询结果格式化的问题。 [打印本页]

作者: 鳄鱼炮炮    时间: 2011-9-1 17:08
标题: 查询结果格式化的问题。
这样一个查询
SELECT * From 表1
WHERE 日期 between #2011/8/1# and #2011/8/31#

UNION SELECT * From 表2
WHERE 日期 between #2011/8/1# and #2011/8/31#;

但是表2中某个字段是数字,而对应的表1是字符串。我想将表2格式化为表1的形式输出。
有什么方法?
网上搜索了这个函数。。但是好像格式不对。。
表2.编号= FORMAT(编号,"粤A#####");

作者: roych    时间: 2011-9-1 20:06
做一个查询,把表2的某个字段用转换函数转为文本(CStr),再以该查询联合查询来处理就够了。按你的意思,估计在窗格里输入:
车牌:"粤A"&[编号]
假定保存为查询1,那么可以改成:
SELECT * From 表1
WHERE 日期 between #2011/8/1# and #2011/8/31#
UNION SELECT * From 查询1
WHERE 日期 between #2011/8/1# and #2011/8/31#
作者: todaynew    时间: 2011-9-1 21:44
多此一举,表1和表2就应该是一个表。
作者: 鳄鱼炮炮    时间: 2011-9-1 21:53
本帖最后由 鳄鱼炮炮 于 2011-9-1 21:53 编辑
todaynew 发表于 2011-9-1 21:44
多此一举,表1和表2就应该是一个表。

2
是这样的,表1的编号是没有固定规律的,而表2是有固定规律的。。
或者这样理解,表2是本地的所以保存的时候没有保存格式,只是显示的时候显示格式。
表1的因为格式不统一,所以另外保存。但是查询的时候我希望可以联合查询,得到格式相同的结果。
作者: todaynew    时间: 2011-9-1 22:05
本帖最后由 todaynew 于 2011-9-1 22:12 编辑
鳄鱼炮炮 发表于 2011-9-1 21:53
2
是这样的,表1的编号是没有固定规律的,而表2是有固定规律的。。
或者这样理解,表2是本地的所以保存 ...


瞎胡闹。
编码你管他有格式还是没格式干嘛,单独用一个ID字段来标识记录就可以了。请务必将两表合并,编码不是最重要的问题,不可因小失大,不可缘木求鱼,不可捡了籽麻丢了西瓜,鱼和熊掌不可兼得时先要熊掌,这玩意好吃。

车辆表:车辆ID(主键),车牌号,车型,。。。。。。
作者: 鳄鱼炮炮    时间: 2011-9-1 22:29
{:soso_e154:}嗯~
我看看怎么改一下~
作者: dashllh    时间: 2011-9-5 09:58
你把表1和表2的所有列都写在select后面,对格式不统一的列进行转换,联合方式保持不变试试
作者: 鳄鱼炮炮    时间: 2011-9-7 16:49
dashllh 发表于 2011-9-5 09:58
你把表1和表2的所有列都写在select后面,对格式不统一的列进行转换,联合方式保持不变试试

已经按照斑竹说的,先去吃熊掌了..谢谢哈~~




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3