oracle自关联
自關(guān)聯(lián)腳本留備忘
Drop Table TBL80064;
?CREATE TABLE TBL80064(UNIT_CODE VARCHAR2(20) NOT NULL
? ? ? ? ? ? ? ?,ITEM_CODE VARCHAR2(20) NOT NULL
? ? ? ? ? ? ? ?,SHOP_CODE VARCHAR2(7) NOT NULL
? ? ? ? ? ? ? ?,RECEIPT_RATE_CODE NUMBER(5)
? ? ? ? ? ? ? ?,COMBINED_SHOP_CODE VARCHAR2(7)
? ? ? ? ? ? ? ?,CONSTRAINT CST80064PK PRIMARY KEY(UNIT_CODE, ITEM_CODE));
INSERT INTO TBL80064
? (UNIT_CODE
? ,ITEM_CODE
? ,SHOP_CODE
? ,RECEIPT_RATE_CODE
? ,COMBINED_SHOP_CODE)
VALUES
? ('00000002'
? ,'00000038'
? ,'5071503'
? ,'10001'
? ,NULL);
INSERT INTO TBL80064
? (UNIT_CODE
? ,ITEM_CODE
? ,SHOP_CODE
? ,RECEIPT_RATE_CODE
? ,COMBINED_SHOP_CODE)
VALUES
? ('00000003'
? ,'00000039'
? ,'5071504'
? ,'10002'
? ,NULL);
INSERT INTO TBL80064
? (UNIT_CODE
? ,ITEM_CODE
? ,SHOP_CODE
? ,RECEIPT_RATE_CODE
? ,COMBINED_SHOP_CODE)
VALUES
? ('00000004'
? ,'00000040'
? ,'5071505'
? ,NULL
? ,'5071504');
INSERT INTO TBL80064
? (UNIT_CODE
? ,ITEM_CODE
? ,SHOP_CODE
? ,RECEIPT_RATE_CODE
? ,COMBINED_SHOP_CODE)
VALUES
? ('00000004'
? ,'00000041'
? ,'5071506'
? ,NULL
? ,NULL);
INSERT INTO TBL80064
? (UNIT_CODE
? ,ITEM_CODE
? ,SHOP_CODE
? ,RECEIPT_RATE_CODE
? ,COMBINED_SHOP_CODE)
VALUES
? ('00000004'
? ,'00000042'
? ,'5071507'
? ,NULL
? ,'5071506');
? Commit;
SELECT A.UNIT_CODE
? ? ? ,A.ITEM_CODE
? ? ? ,A.SHOP_CODE
? ? ? ,A.RECEIPT_RATE_CODE
? ? ? ,A.COMBINED_SHOP_CODE
? ? ? ,NVL(A.RECEIPT_RATE_CODE, B.RECEIPT_RATE_CODE) AS COMBINED_CODE
FROM ? TBL80064 A
LEFT ? JOIN TBL80064 B
ON ? ? A.COMBINED_SHOP_CODE = B.SHOP_CODE
WHERE ?A.RECEIPT_RATE_CODE IS NOT NULL
OR ? ? (A.RECEIPT_RATE_CODE IS NULL AND B.RECEIPT_RATE_CODE IS NOT NULL);
?
總結(jié)
- 上一篇: android手表密码忘了咋办,忘记解锁
- 下一篇: PS——色彩调整