Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.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错误-截断的双精度值不正确?_Mysql_Sql - Fatal编程技术网

创建表时出现MySQL错误-截断的双精度值不正确?

创建表时出现MySQL错误-截断的双精度值不正确?,mysql,sql,Mysql,Sql,我有下面的存储过程,调用它时遇到了问题。select语句单独执行时效果很好,创建存储过程也是如此。但是当我“call();”时,我得到了以下错误: 查找错误-MySQL数据库错误:截断了不正确的双精度值:“0g” 这是存储过程。有人看到可能导致此错误的原因吗 DROP PROCEDURE IF EXISTS test.clients_shipments_with_line_weight_refresh_sp; CREATE PROCEDURE test.`clients_shipments_w

我有下面的存储过程,调用它时遇到了问题。select语句单独执行时效果很好,创建存储过程也是如此。但是当我“call();”时,我得到了以下错误:

查找错误-MySQL数据库错误:截断了不正确的双精度值:“0g”

这是存储过程。有人看到可能导致此错误的原因吗

DROP PROCEDURE IF EXISTS test.clients_shipments_with_line_weight_refresh_sp;

CREATE PROCEDURE test.`clients_shipments_with_line_weight_refresh_sp`()
BEGIN
   DROP TABLE IF EXISTS clients_shipments_with_line_weight;
   CREATE TABLE clients_shipments_with_line_weight
   AS
      (SELECT reg_client_shipments.*,
              wow3.meta_value AS cannabis_type,
              (wow2.meta_value * wp_wowcomm_order_itemmeta.meta_value)
                 AS total_line_item_weight,
              pm3.meta_value   AS province
       FROM clients_shipments
            INNER JOIN wp_postmeta pm2
               ON clients_shipments.ID = pm2.post_id
            INNER JOIN wp_postmeta pm3
               ON     clients_shipments.ID = pm3.post_id
                  AND pm3.meta_key = 'statedeliver'
            INNER JOIN wp_wowcomm_order_items
               ON     wp_wowcomm_order_items.order_id =
                         clients_shipments.ID
                  AND wp_wowcomm_order_items.order_item_type =
                         'product'
            INNER JOIN wp_wowcomm_order_itemmeta
               ON     wp_wowcomm_order_items.order_item_id =
                         wp_wowcomm_order_itemmeta.order_item_id
                  AND wp_wowcomm_order_itemmeta.meta_key = 'weight'
            INNER JOIN wp_wowcomm_order_itemmeta wow2
               ON     wp_wowcomm_order_items.order_item_id =
                         wow2.order_item_id
                  AND wow2.meta_key = 'amount'
            INNER JOIN wp_wowcomm_order_itemmeta wow3
               ON     wp_wowcomm_order_items.order_item_id =
                         wow3.order_item_id
                  AND wow3.meta_key = 'producttype'
       GROUP BY wp_wowcomm_order_itemmeta.meta_id);
END;

这个答案表明,您可以在where或on子句上比较数字或字符串


您选择的Station看起来很像它可能正是这样做的。OP建议删除strict,因此它会变成一个警告。

有机会看到您正在使用的表的定义吗?这是否说明为什么select有效,但不调用create表?创建一个临时表是可行的。您最好的选择是查看为您正在执行的每个列设置了哪些列类型,然后继续。可以尝试创建表,然后使用Select Into填充数据。如果必须进行数据转换,则使用select创建表的操作可能只需要两个步骤。