簡體   English   中英

將另一個表中的值插入到值為 null 的列中

[英]Inserting values from another table into a column where values are null

我有一個只有 ID 的表 A,另一個表 B 有兩列,ID 和產品編號。 表 B 中的 ID 列有空值,產品編號有產品編號。 我想以沒有特定順序的列中的 ID 更新表 B,以便產品編號具有 ID。

我試過使用更新但沒有用,試過插入但它只是將 A 中的 ID 添加到 B 中列表的底部。想在 Microsoft SQL 中執行此操作。

SQL 密碼試過:

IF OBJECT_ID('tempdb..#ProductNum') IS NOT NULL DROP TABLE #ProductNum

SELECT  ID
INTO    #ProductNum
FROM    Products

    

UPDATE  [ProductCatalogue] PC
SET
PC.ID = Pn.ID
FROM #ProductNum Pn
INNER JOIN 
[ProductCatalogue] PC   
ON Pc.ID = Pn.ID
WHERE Pc.ID IS NULL

聽起來你最好使用 ID 列自動增量,而不是從表 A 中給它 ID。這已經在這個答案中解釋過了。

如果您確實需要表 A 中的特定 ID, SO 線程可能會對您有所幫助。

通過在每個表上創建自動遞增列並將其命名為Row_ID解決了這個問題。 然后我使用Row_ID將表與上面@Chris 提供的一些邏輯連接在一起。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM