在SQL中转换未知键的值

时间:2018-08-23 00:39:16

标签: sql transform

给出此表:(A,B,C,...是任意键名)

+---------+---------+---------+---------+---------+
|    A    |    B    |    C    |    D    |    E    | 
+---------+---------+---------+---------+---------+  
|  false  |   true  |  12345  | "string"|  true   | 
+---------+---------+---------+---------+---------+

有什么方法可以在不知道键集的情况下将此转换为:

+---------+---------+---------+---------+---------+
|    A    |    B    |    C    |    D    |    E    | 
+---------+---------+---------+---------+---------+  
|    0    |    1    |  12345  | "string"|    1    | 
+---------+---------+---------+---------+---------+

tldr;我想将所有出现的“ true”(不是字符串)和“ false”(不是字符串)分别更改为1和0。我没有钥匙清单。

1 个答案:

答案 0 :(得分:1)

正如@GordonLinoff所说,在不知道列名的情况下就无法引用列。

在任何其他编程语言中都是相同的:

  

“我想更改变量的值,但我不知道变量名。”

     

“好吧,这对您来说很难。找到变量名后,就可以对其进行更改。”

在SQL中是相同的方式。如果您不知道列名,则可以查询INFORMATION_SCHEMA以发现列名。您必须先执行此操作,然后才能对列进行SQL查询。

其他品牌的数据库具有相似的元数据表,但使用不同的名称。