我有一个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- 乔纳森
答案 0 :(得分:6)
您可以从表中选择任何常量值:
insert into customers(customer_type, key1, key2, value)
select "TypeB", key1, key2, value
from customers
where customer_type = "TypeA"
答案 1 :(得分: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'联合'线以外,基本上就是你所拥有的。