以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于SQL查询语句 select 。 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=7831) |
-- 作者:wcs -- 发布时间:2010/8/10 18:53:00 -- 关于SQL查询语句 select 。 我用这样一条 select 查询语句生成查询表。
select * from [表一] union all select * from [表二] union all select * from [表三]
这三个表的结构完全相同,表的第一列列名为objectid
查询结果出来后,我发现,在这三个表中凡是 objectid 列的值相同的,查询结果只显示后面的表的记录,前面的表记录被覆盖了。
这个objectid好像是主键的意思了,只保留最后一条。
我想,是不是要加个查询参数,才能得到我想要的三个表完全相加的结果,不覆盖任何记录。
请教各位了。 |
-- 作者:狐狸爸爸 -- 发布时间:2010/8/10 19:37:00 -- union all的本意就不排除重复值的,也许对于主键是没有办法的,或者select语句排除主键吧 |
-- 作者:wcs -- 发布时间:2010/8/10 21:48:00 -- 我查了的,objectid是主键。
我查了一下,没有资料说明主键相同的只保留最后的表记录。
但是结果是这样的。
看来只有分成三个表,不联合查询了。 [此贴子已经被作者于2010-8-10 22:03:29编辑过]
|