SQL中的列操作

时间:2012-12-18 13:59:36

标签: mysql sql

我在SQL数据库中有一个表,其中一列包含字符" C"或" P"。 我想定义一个新列,其中值为1,如果此字符为" C"否则为零。

亲切的问候, 丹尼尔

5 个答案:

答案 0 :(得分:3)

如果您想通过投影定义,请尝试

SELECT columnName, IF(columnName = 'C', 1, 0) newValue
FROM tableName

作为Michael Berkowski建议的替代方案,

SELECT columnName, (columnName = 'C') newValue
FROM tableName

答案 1 :(得分:2)

SELECT
    your_fields,
    IF(your_column = 'C', 1, 0) AS new_field
FROM your_table

答案 2 :(得分:2)

您希望它成为永久性专栏吗?如果是,请在表中创建一个默认值为0的新列。然后发出更新语句,如下所示:

UPDATE tableName SET newColumn = 1 WHERE oldColumn = 'C';

答案 3 :(得分:2)

ALTER MY_TABLE ADD NEW_COLUMN INT
UPDATE MY_TABLE SET NEW_COLUMN=1 WHERE OTHER_COLUMN='C'
UPDATE MY_TABLE SET NEW_COLUMN=0 WHERE OTHER_COLUMN='P'

答案 4 :(得分:0)

INSERT
WHEN Col_name1='c' THEN
INTO your_Table (Col_name2)
VALUES (1)
WHEN Col_name1='P' THEN
INTO your_table (Col_name2)
VALUES (0);
SELECT * FROM your_Table;

它会起作用。