我有一個包含有關供應商信息的一部分的表SQL Server的條件插入
背景:本表是聯接
- 的部分主記錄,其中包含
- 的的部件號,部件名稱和默認供應商。
- 其他表是包含
- 針對供應商的部件號的記錄,他們對部分報價供應商信息表(有額外的信息,我已經離開了這個例子)
在這張表中,一些零件的默認供應商是NULL。 對於那些我希望插入一條新記錄作爲佔位符 即#3低於
某些零件有默認供應商,但沒有可能的供應商記錄(帶引用)。 對於那些記錄,我也想插入一個新的記錄作爲佔位符。 即低於
當前表
+-------+-----------+-------------------+-------------------+------------+------------+
|PART |PART NAME |Default Supplier |Possible Suppliers |Quote |InfoComplete|
+-------+-----------+-------------------+-------------------+------------+------------+
|#1 |Part 1 |Supplier 5 |Supplier 1 |25.0 |0 |
|#1 |Part 1 |Supplier 5 |Supplier 2 |20.5 |0 |
|#2 |Part 2 |Supplier 10 |Supplier 10 |10.4 |1 |
|#3 |Part 3 |NULL |Supplier 3 |9.5 |0 |
|#3 |Part 3 |NULL |Supplier 4 |11.5 |0 |
+-------+-----------+-------------------+-------------------+------------+------------+
所需的輸出(空間清晰顯示)
+-------+-----------+-------------------+-------------------+------------+------------+
|PART |PART NAME |Default Supplier |Possible Suppliers |Quote |InfoComplete|
+-------+-----------+-------------------+-------------------+------------+------------+
|#1 |Part 1 |Supplier 5 |Supplier 1 |25.0 |0 |
|#1 |Part 1 |Supplier 5 |Supplier 2 |20.5 |0 |
|#2 |Part 2 |Supplier 10 |Supplier 10 |10.4 |1 |
|#3 |Part 3 |NULL |Supplier 3 |9.5 |0 |
|#3 |Part 3 |NULL |Supplier 4 |11.5 |0 |
| | | | | | |
|#1 |Part 1 |Supplier 5 |**MISSING** |NA |0 |
|#3 |Part 3 |**MISSING** |**MISSING** |NA |0 |
+-------+-----------+-------------------+-------------------+------------+------------+
#1從我讀了MERGE語句可能是一個解決方案,但我不能」不要讓它工作。
編輯:
對不起,我應該一直在我最初的職位更清晰一點,該信息被輸出到用戶查看丟失的數據。 沒有計劃替換數據庫中的NULL值。
我只是想操縱數據,以使用戶更清楚地瞭解數據。
根據反饋,我正在尋找更好的方式向用戶顯示信息。
爲什麼要在這些記錄中浪費額外的空間來存儲'** MISSING **時,NULL會是一種更高效和典型的數據安排?此外,採用這種方法將會搜索缺省供應商空效率較低的零件。 –
我無法從示例中看到第1部分(和第3部分)如何從可能的供應商處獲得** MISSING **? –