根据条件SQL Server插入和更改数据

时间:2017-10-18 12:11:52

标签: sql sql-server insert sql-update case

我目前有Table1包含

fileToDataURL(file: any) {
    return new Promise((resolve, reject) => {
        var reader = new FileReader();
        reader.onload = function (e: any) {
            resolve(e.target.result);
        };
        reader.readAsDataURL(file);
    });
}

现在我希望将这些数据插入第二个表(表2)。但基本上我试图插入“男性”和“女性”这两个词。 因此,例如当表1中的Gender ='m'时,我想将char'男性'插入到第二个表(table2)中,并将其插入到女性中。

我创建了一些代码,例如

 ID Gender
 1  m
 2  f
 3  f
 4  m
 5  f
 6  f

如果有任何帮助,我有一个SQL Fiddle模式 -

http://sqlfiddle.com/#!9/8a3080

谢谢

2 个答案:

答案 0 :(得分:7)

使用if let firstIdentifier = deviceArray[0].identifier { print(firstIdentifier) } 表达式可以使用INSERT语句而不是UPDATE

Case

结果(表2):

INSERT INTO table2
       SELECT id,
              CASE(Gender)
                  WHEN 'm'
                  THEN 'Male'
                  WHEN 'f'
                  THEN 'Female'
              END
       FROM table1;

答案 1 :(得分:3)

如果要在第二个表格中插入行,请使用insert,而不是update

insert into table2(id, gender)
    select t1.id,
           (case when t1.gender = 'f' then 'female'
                 when t1.gender = 'm' then 'male'
            end) as gender_expanded
    from table1 t1;