我想访问一些表,例如Toyota_Corolla,Toyota_Camry,Toyota_Prius,Toyota_Rav4
与其像下面那样输入多个SELECT语句:
SELECT * FROM Toyota_Corolla;
SELECT * FROM Toyota_Camry;
SELECT * FROM Toyota_Prius;
SELECT * FROM Toyota_Rav4;
是否可以创建一个字符串列表,例如['Corolla','Camry','Prius',Rav4'],并在FROM
行之后遍历该列表,类似于以下内容:>
SELECT * FROM 'Toyota_'` + 'some loop to iterate the list of car model'
以我的示例为例,将整个内容键入出来会更容易,但是当丰田有数百种车型时,情况又如何呢?
这是MS SQL Server DBMS
答案 0 :(得分:1)
不。首先,您应该修复数据模型,以使您拥有一个带有丰田模型附加表的表格。这是存储数据的正确方法。
使用您拥有的数据,可以使用以下视图进行仿真:
create view vw_toyota as
select 'Corolla' as toyota_model, t.* from Toyota_Corolla t union all
select 'Camry' as toyota_model, t.* from Toyota_Camry t union all
select 'Prius' as toyota_model, t.* from Toyota_Prius t union all
select 'Rav4' as toyota_model, t.* from Toyota_Rav4 t;
这还将添加源表信息。
然后执行:
select *
from vw_toyota;