我有2個表格,如下所示的排名不正確。是否可以比較這兩個表之間的數據,並根據第一個表中可用的數據對其進行排名,並將第一個表中的不可用記錄排序在該值中。更新中的RANK()函數sql
表1:
PRODUCT1 LINE1 RANK1
12345 XXXX 1
12345 YYYY 2
12345 ZZZZ 3
34556 GGGG 1
目前具有以下輸出我的表2
表2:
PRODUCT2 LINE2 SCORE RANK2
12345 GGGG 100 1
12345 JJKJ 90 2
12345 WEJJ 80 3
12345 CCCC 70 4
12345 XXXX 60 5
12345 YYYY 50 6
12345 ZZZZ 40 7
34556 AAAA 90 1
34556 GGGG 80 2
34556 HHHH 90 3
34556 FFFF 80 4
我更新後期待我的表2輸出如下
PRODUCT2 LINE2 SCORE RANK2
12345 XXXX 70 1
12345 YYYY 50 2
12345 ZZZZ 40 3
12345 GGGG 100 4
12345 JJKJ 90 5
12345 WEJJ 80 6
12345 CCCC 70 7
34556 GGGG 80 1
34556 HHHH 90 2
34556 FFFF 80 3
34556 AAAA 90 4
查詢輸出是像下面,
PRODUCT2 LINE2 SCORE RANK2
12345 XXXX 70 1
12345 YYYY 50 2
12345 ZZZZ 40 3
12345 GGGG 100 4
12345 JJKJ 90 5
12345 WEJJ 80 6
12345 CCCC 70 7
34556 GGGG 80 1
34556 HHHH 90 8
34556 FFFF 80 9
34556 AAAA 90 10
由於(SELECT MAX(RANK)FROM TEMP)在應答所花費的最大秩從臨時無關的產品編號和分配最大數量爲秩爲其餘產品。在這種情況下,7是在產品1的最大秩數,因此在表中的排名分配爲8,9,10的不可用線2
你真的在使用DB2和Oracle嗎? –
我正在使用DB2,刪除了不正確的oracle標記。 –