[转帖]错误代码: 1582 Incorrect parameter count in the call to native function 'str_to__MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1639 | 回复: 0   主题: [转帖]错误代码: 1582 Incorrect parameter count in the call to native function 'str_to_        下一篇 
ad222888
注册用户
等级:新兵
经验:66
发帖:134
精华:0
注册:2016-9-25
状态:离线
发送短消息息给ad222888 加好友    发送短消息息给ad222888 发消息
发表于: IP:您无权察看 2018-8-24 15:39:51 | [全部帖] [楼主帖] 楼主

1 queries executed, 0 success, 1 errors, 0 warnings


查询:SELECT t.`name`, DATE_FORMAT(str_to_date('2015'), '%Y') as statisDate, ROUND(IFNULL(SUM(t.`amount`), 0), 3) AS ...
错误代码: 1582

Incorrect parameter count in the call to native function 'str_to_date'


执行耗时 : 0 sec
传送时间 : 0 sec
总耗时 : 0 sec
2. 错误原因

 SELECT t.`name`, DATE_FORMAT(STR_TO_DATE('2015'), '%Y') AS statisDate, ROUND(IFNULL(SUM(t.`amount`), 0), 3) AS amount FROM t_stu_info t WHERE 1 = 1 AND DATE_FORMAT(t.statisDate, '%Y') = '2015' UNION ALL SELECT t.`name`, DATE_FORMAT(STR_TO_DATE('2014'), '%Y') AS statisDate, ROUND(IFNULL(SUM(t.`amount`), 0), 3) AS amount FROM t_stu_info t WHERE 1 = 1 AND DATE_FORMAT(t.statisDate, '%Y') = '2014'


MySQL内置函数str_to_date的格式是:str_to_date(字符串,日期格式);
在这个查询SQL中却是str_to_date(字符串),导致报错

3. 解决办法
修改查询SQL语句

SELECT t.`name`, DATE_FORMAT(STR_TO_DATE('2015','%Y'), '%Y') AS statisDate, ROUND(IFNULL(SUM(t.`amount`), 0), 3) AS amount FROM t_stu_info t WHERE 1 = 1 AND DATE_FORMAT(t.statisDate, '%Y') = '2015' UNION ALL SELECT t.`name`, DATE_FORMAT(STR_TO_DATE('2014','%Y'), '%Y') AS statisDate, ROUND(IFNULL(SUM(t.`amount`), 0), 3) AS amount FROM t_stu_info t WHERE 1 = 1 AND DATE_FORMAT(t.statisDate, '%Y') = '2014'




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论