簡體   English   中英

通過選擇其他表中的另一列來插入一列,但如何填充第二列

[英]Insert into one column by selecting another column in other table but how fill the second column

我有一個包含兩列的表,我將通過選擇其他表列數據來填充其中一列,但由於我無法使用VALUE,我該如何填充下一列。 這是代碼

INSERT INTO Numbers(number, val) SELECT LaptopID FROM Laptop WHERE Laptop.Pid = 2 

如您所見,“ val”列留為空白,我該如何填寫?

如果列允許使用NULL

INSERT INTO Numbers(number, val)
SELECT LaptopID, NULL
FROM Laptop WHERE Laptop.Pid = 2

或使用所需的預期值(硬編碼)。

如果是數字:

INSERT INTO Numbers(number, val)
SELECT LaptopID, 2
FROM Laptop WHERE Laptop.Pid = 2

或如果文字:

INSERT INTO Numbers(number, val)
SELECT LaptopID, 'val'
FROM Laptop WHERE Laptop.Pid = 2

如果沒有對應的值,則需要輸入數字; 那么您可以只輸入零或NULL:

像這樣的東西

INSERT INTO numbers (number, val)
SELECT NULL, laptopid
  FROM laptop
 WHERE laptop.pid = 2

您可以將其添加為SELECT的參數。 例如:

INSERT INTO Numbers(number, val)
    SELECT LaptopID, 'val'
    FROM Laptop
    WHERE Laptop.Pid = 2 

恕我直言,您需要與另一個表進行INNER JOIN,如下所示:

INSERT INTO Numbers(number, val) SELECT L.LaptopID, OT.OTHER_COLUMN FROM Laptop L 
INNER JOIN OTHER_TABLE OT ON L.SOME_COLUMN = OT.ANOTHER_SOME_COLUMN 
WHERE Laptop.Pid = 2 

SQLCE不支持多表更新等,因此我使用了以下方法

SELECT Laptop.LaptopID, Table2.val FROM Laptop, Table2 WHERE
Laptop.Pid = 2  or where laptop.pid= table2.pid

然后使用http://sqlcebulkcopy.codeplex.com/批量插入

希望能幫助到你 :)

INSERT INTO answer(userans) VALUES(OptionA) Select username From answer WHERE username= 'Name';

我想在列中添加數據以引用同一張表中的另一列。

暫無
暫無

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

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