如何在一个 "table" 的同一个自动生成的整数上连接多个表?
How can I join multiple tables on the same auto generated integer from one "table"?
我想创建一个随机 selected 交叉连接 table,它会自动递增自己的 ID 并在其上连接。
假设我的 table 看起来像这样。
人
Firstname, Lastname
Hans | Müller
Joachim | Bugert
Address
City, Street, StreetNumber
Hamburg | Wandsbeckerstr. | 2
Berlin | Konradstraße | 13
现在我想使用自动生成的 ID 加入 tables,它们应该是随机的 selected。
最后的 table 应该是这样的
ID,Firstname,Lastname, City, Street, StreetNumber
1 |Hans|Bugert|Berlin|Wandsbeckerstr|2
2|Joachim|Müller|Hamburg|Konradstraße | 13
我已经尝试或使用过的:
这里我自动生成我想在
加入table的ID
select GENERATED_PERIOD_START as ID FROM SERIES_GENERATE_INTEGER(1,1,10)
问题是交叉连接和内部连接对我不起作用,因为它总是将所有内容与所有内容连接起来,或者它不是在同一 ID 上连接。
SELECT Person."Firstname", Person."Lastname", Address."City",Address."Street", Address."StreetNumber"
FROM
( select GENERATED_PERIOD_START as ID FROM SERIES_GENERATE_INTEGER(1,1,10)
) autoGenID
inner JOIN
(select "Firstname" ,"Lastname" FROM Person ORDER BY RAND()) Person
inner JOIN
(select "City", "Street", "StreetNumber", FROM Address ORDER BY RAND()) Address
JOIN ON autoGenID."ID"=?????
这是我的问题,我不能 select 随机数据和 select 我自动生成的 ID。
感谢您提供解决此问题的帮助或想法!
我想你想要:
SELECT p."Firstname", p."Lastname", a."City", a."Street", a."StreetNumber"
FROM (SELECT p.*,
ROW_NUMBER() OVER (ORDER BY RAND()) as seqnum
FROM Person p
) p JOIN
(SELECT a.*,
ROW_NUMBER() OVER (ORDER BY RAND()) as seqnum
FROM Address a
) a
ON p.seqnum = a.seqnum;
我想创建一个随机 selected 交叉连接 table,它会自动递增自己的 ID 并在其上连接。 假设我的 table 看起来像这样。
人
Firstname, Lastname
Hans | Müller
Joachim | Bugert
Address
City, Street, StreetNumber
Hamburg | Wandsbeckerstr. | 2
Berlin | Konradstraße | 13
现在我想使用自动生成的 ID 加入 tables,它们应该是随机的 selected。 最后的 table 应该是这样的
ID,Firstname,Lastname, City, Street, StreetNumber
1 |Hans|Bugert|Berlin|Wandsbeckerstr|2
2|Joachim|Müller|Hamburg|Konradstraße | 13
我已经尝试或使用过的:
这里我自动生成我想在
加入table的IDselect GENERATED_PERIOD_START as ID FROM SERIES_GENERATE_INTEGER(1,1,10)
问题是交叉连接和内部连接对我不起作用,因为它总是将所有内容与所有内容连接起来,或者它不是在同一 ID 上连接。
SELECT Person."Firstname", Person."Lastname", Address."City",Address."Street", Address."StreetNumber"
FROM
( select GENERATED_PERIOD_START as ID FROM SERIES_GENERATE_INTEGER(1,1,10)
) autoGenID
inner JOIN
(select "Firstname" ,"Lastname" FROM Person ORDER BY RAND()) Person
inner JOIN
(select "City", "Street", "StreetNumber", FROM Address ORDER BY RAND()) Address
JOIN ON autoGenID."ID"=?????
这是我的问题,我不能 select 随机数据和 select 我自动生成的 ID。
感谢您提供解决此问题的帮助或想法!
我想你想要:
SELECT p."Firstname", p."Lastname", a."City", a."Street", a."StreetNumber"
FROM (SELECT p.*,
ROW_NUMBER() OVER (ORDER BY RAND()) as seqnum
FROM Person p
) p JOIN
(SELECT a.*,
ROW_NUMBER() OVER (ORDER BY RAND()) as seqnum
FROM Address a
) a
ON p.seqnum = a.seqnum;