我有一个表Details
它有2个字段Name
和Country
。它目前有5行,Country
的值为A,B,B,C,D。我需要为State
为B的行添加新字段Country
。这可能吗?
由于
答案 0 :(得分:2)
您不能为单行添加一列,而不是关系数据库的工作方式。但是,您可以为整个表添加一列,并设置为使您没有任何数据的行为空,或者创建一个单独的表来存储您的状态。
例如:
CREATE TABLE state (detail_id integer, state_name varchar(50));
INSERT INTO state (detail_id, state_name) VALUES ((SELECT detail_id
FROM details
WHERE Country = 'B'
LIMIT 1),
'Some State');
答案 1 :(得分:1)
无论数据如何,表格的设计都是固定的。如果要添加列,它将应用于所有行。
ALTER TABLE `Details` ADD COLUMN `State` VARCHAR(12) NULL; -- 12 was just a guess