溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

數據庫將兩張表進行橫向連接(拼接成一張表的形式顯示)

發(fā)布時間:2020-07-19 09:28:46 來源:網絡 閱讀:1528 作者:不倒翁88 欄目:關系型數據庫

將兩張沒有關聯字段的表進行橫向連接,在工作中,對于一些報表的顯示,需要展示兩張沒有關聯字段的表中的數據,并且橫向連接,比如下面兩張表的數據:

SELECT * FROM STUDENT T;

數據庫將兩張表進行橫向連接(拼接成一張表的形式顯示)

SELECT * FROM COURSE C;

數據庫將兩張表進行橫向連接(拼接成一張表的形式顯示)

現在需要顯示成如下圖所示樣式:
數據庫將兩張表進行橫向連接(拼接成一張表的形式顯示)

此時這兩張表之間并沒有相關聯的字段,我們經常用的left join,right join, full join 都是需要相關聯的字段的,所以我們就找一個相同關聯的字段---ROWNUM,唯一且能關聯,再使用全連接full join 就能解決了問題了,SQL語句如下:

SELECT A.*, B.*
FROM 
  (SELECT S.*, ROWNUM RN FROM STUDENT S) A
  FULL JOIN 
  (SELECT C.*, ROWNUM RN FROM COURSE C) B
ON A.RN = B.RN;

查詢結果如下:
數據庫將兩張表進行橫向連接(拼接成一張表的形式顯示)
可以看出通過rownum 和full join 就能輕松的實現良兩張表的橫向連接展示了。

如果不想顯示RN這一列的話,就不要用*就OK了,需要什么字段顯示什么字段:

SELECT A.ID, A.NAME, A.CLASS, B.ID, B.C_NAME
FROM 
  (SELECT S.*, ROWNUM RN FROM STUDENT S) A
  FULL JOIN 
  (SELECT C.*, ROWNUM RN FROM COURSE C) B
ON A.RN = B.RN;

數據庫將兩張表進行橫向連接(拼接成一張表的形式顯示)

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI