首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mysql -包含来自组合表的数据的表

mysql -包含来自组合表的数据的表
EN

Stack Overflow用户
提问于 2012-06-29 13:57:15
回答 1查看 64关注 0票数 1

我知道我可以将表与sql查询组合在一起,但这不是我想要的。

假设有10个表,所有表都是相同的,但由于某些原因,我不想将这些数据混合在一个表中。不过!另一方面,为了创建特定的搜索结果,我希望能够执行单个combined_table查询:(select * from sql where name='whatever')

其中我从这10个表中动态获取数据...

有可能,是/不是?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-29 14:00:27

几乎可以肯定的是,您希望将此数据放入单个表中。

假设您有十种不同类型的数据。添加一个名为type的列(您应该选择一个更好的名称),并允许它的值从1到10。现在,您的查询将无需更改即可工作。

如果您愿意,您仍然可以单独获取数据:

代码语言:javascript
运行
复制
SELECT * from yourtable
WHERE name = 'whatever'
AND `type` = 3

我能想到的不这样做的唯一原因是,如果您有不同的用户,具有不同的权限,并且您希望使用表来控制哪些用户可以看到哪些数据。

如果尽管有这些好处,但您仍然不想将数据放在一个表中,那么可以使用UNION ALL来解决这个问题。

代码语言:javascript
运行
复制
CREATE VIEW yourview AS
SELECT col1, col2, ..., coln FROM table1
UNION ALL
SELECT col1, col2, ..., coln FROM table2
UNION ALL
SELECT col1, col2, ..., coln FROM table3
UNION ALL
etc...
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11256749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档