关联表来制作一个列表(SQL)

时间:2018-05-02 23:41:16

标签: mysql sql

我有3个不同列的表,除了一个名为" FileKey"的表。我需要一个查询,将3个表中的该字段作为列表I think here is more easy to see

返回

请耐心等待,我是新来的:(

3 个答案:

答案 0 :(得分:0)

您可以使用FileKey值上的三个表的简单JOIN来执行此操作。

SQL Inner-join with 3 tables?

答案 1 :(得分:0)

你可以像这样使用联盟:

Select FieldKey from TableA 
union 
Select FieldKey from TableB 
union
Select FieldKey from TableC

如果在diferents表中具有相同的FieldKey,则使用union不会复制数据。

如果你想复制数据使用union就像这样:

Select FieldKey from TableA 
union all
Select FieldKey from TableB 
union all
Select FieldKey from TableC

请查看以下链接以便更好地了解它 https://www.w3schools.com/sql/sql_union.asp

答案 2 :(得分:0)

最好的方法是使用UNION Operator。 但如果您不想使用UNION,您可以将所有三个表数据插入临时表,然后使用Select语句查看它。

DECLARE @TableA TABLE (ID INT);
DECLARE @TableB TABLE (ID INT);
DECLARE @TableC TABLE (ID INT);
DECLARE @Needed TABLE (ID INT);

INSERT INTO @TableA VALUES(53)
INSERT INTO @TableB VALUES(49)
INSERT INTO @TableC VALUES(34)

INSERT INTO @Needed (Id)
SELECT ID FROM @TableA

INSERT INTO @Needed (Id)
SELECT ID FROM @TableB

INSERT INTO @Needed (Id)
SELECT ID FROM @TableC


SELECT * FROM @Needed