Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何将“YES”的VARCHAR转换为1的TINYINT并转换为另一个表?_Mysql - Fatal编程技术网

Mysql 如何将“YES”的VARCHAR转换为1的TINYINT并转换为另一个表?

Mysql 如何将“YES”的VARCHAR转换为1的TINYINT并转换为另一个表?,mysql,Mysql,我有tableA,它有一个名为“有趣的VARCHAR4”的专栏,里面有“是”和“否”字符串 我有一个表格B,也有有趣的TINYINT1列,它是空的 假设两个表都有相应的id列,我可以从Workbench运行什么样的MySQL查询,它将从tableA中获取所有内容并将其转换为tableB中的正确整数值?您可以告诉MySQL用所需信息填充insert语句,从tableA到tableB,这样它将插入新记录,既然你提到这是一张空桌子。case语句将负责将值从yes/no更改为1/0 在MySQL中,fu

我有tableA,它有一个名为“有趣的VARCHAR4”的专栏,里面有“是”和“否”字符串

我有一个表格B,也有有趣的TINYINT1列,它是空的


假设两个表都有相应的id列,我可以从Workbench运行什么样的MySQL查询,它将从tableA中获取所有内容并将其转换为tableB中的正确整数值?

您可以告诉MySQL用所需信息填充insert语句,从tableA到tableB,这样它将插入新记录,既然你提到这是一张空桌子。case语句将负责将值从yes/no更改为1/0


在MySQL中,funcy='YES'对于'YES'将计算为1,对于所有其他情况,将计算为0。选择ID、Case when fully='YES',然后选择1 when fully='NO',然后选择0,否则将以null结尾,从表A转换。希望您能够了解更新。请为答案添加一些解释。不建议只包含代码的答案。
INSERT INTO tableB (id, funny) 
(SELECT id, 
  CASE funny
    WHEN funny = 'YES' THEN 1
    WHEN funny = 'NO' THEN 0 
  END as funny_new
  FROM tableA )