2

SQLデータベースにテーブルがあり、1つの列に文字「C」または「P」が含まれています。この文字が「C」の場合は値が1で、それ以外の場合はゼロである新しい列を定義したいと思います。

よろしく、ダニエル

4

5 に答える 5

3

投影によって定義したい場合は、

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

によって提案された代替案としてMichael Berkowski

SELECT columnName, (columnName = 'C') newValue
FROM tableName
于 2012-12-18T14:00:50.860 に答える
2

恒久的なコラムにしますか?その場合は、デフォルト値0でテーブルに新しい列を作成します。次に、次のように更新ステートメントを発行します。

UPDATE tableName SET newColumn = 1 WHERE oldColumn = 'C';
于 2012-12-18T14:02:06.500 に答える
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'
于 2012-12-18T14:07:47.803 に答える
2
SELECT
    your_fields,
    IF(your_column = 'C', 1, 0) AS new_field
FROM your_table
于 2012-12-18T14:01:53.207 に答える
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;

それが動作します。

于 2012-12-18T14:08:58.133 に答える