插入临时表mysql时截断不正确的INTEGER值

时间:2016-02-04 12:15:55

标签: mysql mysql-workbench

  

0 72 17:37:20调用new_procedure错误代码:1292。截断错误   INTEGER值:'_ 3_ELECTRICITY BILL_3.pdf'0.140秒

注意: 3_ELECTRICITY BILL_3.pdf值包含在tbl_AccountOpeningForm列的AttachmentName表格中

但如果我从查询中删除了having clause,那就可以了。

tbl_AccountOpeningForm
CustNo          VARCHAR(80)
AttachmentName  VARCHAR(100)



-- --------------------------------------------------------------------------------
-- Routine DDL
-- Note: comments before and after the routine body will not be stored by the server
-- --------------------------------------------------------------------------------
DELIMITER $$

CREATE DEFINER=`root`@`localhost` PROCEDURE `new_procedure`()
BEGIN


drop table  if exists tblReport;
 create temporary table tblReport
 (  
  CustNo varchar(80)  
 )  ;


 insert into tblReport (CustNo) 
 select CustNo 
 from tbl_AccountOpeningForm 
 group by CustNo 
 having COUNT(case when LTRIM(RTRIM(AttachmentName))='' then null else AttachmentName end)!=
 COUNT(case when LTRIM(RTRIM(AttachmentName))!='' then null else AttachmentName end) limit 10000000;
 select * from  tblReport;


END

1 个答案:

答案 0 :(得分:2)

尝试用这样的逻辑来表达:

Call to deleted constructor of OwnedArray<fftconvolver::FFTConvolver>

MySQL通常非常了解 having SUM(LTRIM(RTRIM(AttachmentName)) <> '') <> SUM(LTRIM(RTRIM(AttachmentName)) = '') limit 10000000; 表达式的返回类型。错误消息表明它变得混乱。如果这是问题,那么简化的逻辑应该修复它。