我目前正在做一个Airflow项目,其中一个DAG正在触发这个SQL查询:
select CONVERT(date, GETDATE()) as datum,
sum(convert(int, fertig))/convert(float, count(*)) as servicegrad,
count(*) as position,
sum(Anzahl) as positionsdetails,
sum(convert(int, fertig)) as fertig, CASE
WHEN (Empfänger LIKE '%empfänger1%' or
Empfänger LIKE '%empfänger2%' or
Empfänger LIKE '%empfänger3%' or
Empfänger LIKE '%empfänger4%' or
Empfänger LIKE '%empfänger5%') THEN 'lager1'
WHEN (Empfänger LIKE '%empfänger6%' or Empfänger LIKE '%empfänger7%' or
Empfänger LIKE '%empfänger8%' or Empfänger LIKE '%9%') THEN 'lager2'
WHEN (Empfänger LIKE N'%empfänger10%' or
Empfänger LIKE '%empfänger11%' or
Empfänger LIKE '%empfänger11%' or
Empfänger LIKE '%empfänger12%' or
Empfänger LIKE '%empfänger13%') THEN 'Lager3'
ELSE 'lager4'
END as typ from wa left join (
select count(*) as Anzahl, WaID from wadetails
group by WaID
) as wad on wad.WaID = wa.ID
where (CONVERT(DATE, ABTermin) > CONVERT(date,DATEADD(day, -1,GETDATE()))
and
CONVERT(DATE, ABTermin) < CONVERT(date,DATEADD(day, 1,GETDATE())))
group by
CASE
WHEN (Empfänger LIKE '%empfänger1%' or
Empfänger LIKE '%empfänger2%' or
Empfänger LIKE '%empfänger3%' or
Empfänger LIKE '%empfänger4%' or
Empfänger LIKE '%empfänger5%') THEN 'lager1'
WHEN (Empfänger LIKE '%empfänger6%' or Empfänger LIKE '%empfänger7%' or
Empfänger LIKE '%empfänger8%' or Empfänger LIKE '%9%') THEN 'lager2'
WHEN (Empfänger LIKE N'%empfänger10%' or
Empfänger LIKE '%empfänger11%' or
Empfänger LIKE '%empfänger11%' or
Empfänger LIKE '%empfänger12%' or
Empfänger LIKE '%empfänger13%') THEN 'Lager3'
ELSE 'lager4'
END
该查询应该将数据从Mssql数据库传输到Mysql数据库。但当它运行时,我会得到以下错误:
_mysql_exceptions.OperationalError: (1366, "Incorrect integer value: 'lager4' for column 'fertig' at row 1")
我想我理解错误的含义,值'Lager4'应该写入列typ中,但被写入列fertig中。但我似乎无法在查询中找到导致错误的问题。
这不能回答你的问题,但它会提示你去哪里看。
如果您得到一个MySQL错误,那么代码在SQL Server中运行良好。然而,问题是您将这些值插入到MySQL中。
令人高兴的是,这仅仅意味着您需要查看select
子句。您需要查看MySQL中列的类型,并确定哪些列是int
s。
那么,转换就有问题了。可能性有:
数据
费尔蒂格
Anzal
类型
当您知道这些列中哪些是整数时,您可以进一步研究。
问题内容: 我正在尝试插入我的MySQL数据库。第一列是“ id”列,因为它是一个auto_increment字段,所以我将其留为空白。由于某些原因,我无法插入,并且出现了下面提到的错误。我对此表示感谢。 尝试插入时出现以下错误: 我的查询 问题答案: 这可能意味着您是一个整数,并且您正在尝试发送字符串。您应该指定一个列列表,并从中删除它。
问题内容: 我需要获取一个包含前N个正整数的结果集。是否可以仅使用标准SQL SELECT语句来获取它们(不提供任何计数表)? 如果不可能,是否有任何特定的MySQL方法来实现? 问题答案: 似乎您想要的是一个。 在中,没有表是不可能的。 大多数主要系统都提供了一种实现方法: 在: FROM dual CONNECT BY level <= 10 在: SELECT * FROM q 在: FRO
我做了一个触发器来验证两列,当其中只有一列错误时,它会正常显示消息,当两列都错误时,我会得到错误 错误代码:1292。截断不正确的INTEGER值:" 我相信是在Concat部分,我是不是错过了什么功能?
我正在制作一个使用tableView的程序。一切都进行得很顺利,只是由于某些原因,我无法获得要填充到表中的整数值。下面是我在主程序中的代码,当我运行程序时,字符串和Double填充,但整数没有。在我的产品类中,sku是int。不太确定哪里出了问题,寻找一些洞察力! 这里是发票对象和添加产品。
我的邮递员运行示例JSON文件: 预先请求脚本: 带参数的主体: 对于仅接受字符串变量 - name 和布尔字段正常工作,并且为其他两个字段填充值,则不传递变量值。
该方法通过用户的输入获取给定数据集中的两个最大整数,并计算它们的乘积。它对每个输入都很有效,直到我尝试了两个整数和的数组,它返回。 这是我的Java方法: 这是我的方法: