假設我們有這兩個表。
表格1:
|column_1 | ... |
--------------------
| 'a' | ... |
| 'b' | ... |
| 'c' | ... |
| 'd' | ... |
| 'e' | ... |
表_2:
|column_1 | ... |
--------------------
| 1 | ... |
| 2 | ... |
| 3 | ... |
| 4 | ... |
| 5 | ... |
我想將 TABLE_1 的所有行與 TABLE_2 中的一些隨機列配對,其中每對將具有來自 TABLE_2 的亂數量的不同行(范圍 1、2、3)
輸出可能是:
|column_1 | column_2 |
---------------------------
| 'a' | 1 |
| 'a' | 2 |
| 'a' | 5 |
| 'b' | 5 |
| 'c' | 3 |
| 'c' | 4 |
| 'd' | 3 |
| 'e' | 3 |
| 'e' | 5 |
| 'e' | 1 |
uj5u.com熱心網友回復:
JOIN LATERAL
為我做了這件事。
SELECT *
FROM TABLE1
LEFT JOIN LATERAL(
SELECT *
FROM TABLE2 LIMIT FLOOR(RANDOM() * 3 1)) a
ON TRUE
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/474686.html
標籤:sql PostgreSQL 加入
上一篇:從列varchar而不是int的兩個表中選擇UNION和JOIN
下一篇:帶過濾的SQL內連接
