2010-03-18 70 views
0

我有一個MySQL表,它爲特定客戶類型定義值。在更改一個值時將行插入到MySQL表中

| CustomerType |關鍵字段1 |關鍵字段2 |值|

每個客戶類型都有10個與其關聯的值(基於其他兩個關鍵字段)。

我正在創建與另一個客戶類型(TypeA)完全相同的新客戶類型(TypeB)。我想插入「TypeB」作爲CustomerType,但只需將TypeA的行中的值複製到其他三個字段中。

是否有SQL插入語句來實現此目的?

財產以後這樣的:

insert into customers(customer_type, key1, key2, value) values 
"TypeB" union 
    select key1, key2, value 
    from customers 
    where customer_type = "TypeA" 

Thanks- 喬納森

回答

5

您可以從表中選擇任何恆定值:

insert into customers(customer_type, key1, key2, value) 
    select "TypeB", key1, key2, value 
    from customers 
    where customer_type = "TypeA" 
0

從MySQL的reference

INSERT INTO tbl_temp2 (fld_id) 
SELECT tbl_temp1.fld_order_id 
FROM tbl_temp1 WHERE tbl_temp1.fld_order_id > 100; 

基本上正是你除了擺脫'TypeB'聯盟'線。

相關問題