sql查询语句报错处理——ERROR: failed to find conversion function from unknown to text
今天遇到写存储过程遇到的一个小问题,在查询语句中使用到了自定义的数当做列的值,然后想给这一列起一个别名 ,就直接在后面用了 as 别名。
执行存储过程,存储过程报错,ERROR: failed to find conversion function from unknown to text 。意思是没有找到一个将未知 转换成text 的函数。
举例说明:
在以下代码中 ,我们需要用到临时表update_中的三个字段来进行where条件的判断,因为_p_year,_stat_date是存储过程中输入的参数 也包括'00000' ,都是要起别名当做where的条件判断
但是类似这种,直接用的话会报上述错误。
所以需要加 ::text 转换成文本类型 ::int 转换成int类型
UPDATE employment_status e SET cgl=update_.cgl FROM (SELECT temp_.area_code as sfdm, '00000' as yxdm, _p_year as year, --问题出现的地方 _stat_date::text as stat_date, ( ( temp_.rate - _v_avg_province_cgl_score ) / _v_stddev_province_cgl_score * 10 + 50 ) / _v_cgl_rate as cgl FROM ( SELECT inf_.area_code, rate FROM ( SELECT b.yxszsdm, b.byqxdm, 1.0 * num / total AS rate FROM ( SELECT yxszsdm, COUNT (1) AS total FROM graduate_info gra, school_info sch WHERE YEAR = _p_year AND gra.yxdm = sch.code AND sch.build_type_name NOT LIKE '科研机构' GROUP BY yxszsdm ) AS A, ( SELECT yxszsdm, byqxdm, COUNT (1) AS num FROM graduate_info gra, school_info sch WHERE YEAR = _p_year AND gra.yxdm = sch.code AND sch.build_type_name NOT LIKE '科研机构' GROUP BY yxszsdm, byqxdm ) AS b WHERE A .yxszsdm = b.yxszsdm AND byqxdm ='80' ) gra_ RIGHT JOIN ( SELECT DISTINCT u.area_code FROM user_info u, school_info s WHERE u.org_code = s.code AND s.build_type_name != '科研机构' ORDER BY area_code ) inf_ ON gra_.yxszsdm = inf_.area_code ) temp_ )update_ WHERE e.sfdm=update_.sfdm AND e.yxdm=update_.yxdm AND e.stat_date=update_.stat_date AND e.year=update_.year; |
简单例子:
Select * from (select 'string' as Rowname, Data From table) Union all (select 'string2' as Rowname, Data From table) |
期望输出:
Rowname Data
string 53
string2 87
这样的话会报错,需要我们加一个转换函数 ::text 修改后
SELECT 'string'::text AS rowname, data FROM tbl1 UNION ALL SELECT 'string2', data FROM tbl2 |
sql查询语句报错处理——ERROR: failed to find conversion function from unknown to text的更多相关文章
- 数据库查询语句报错-ORA-00911: invalid character
数据库查询语句报错-ORA-00911: invalid character 根据自己经验总结下: 1.都是分号惹的祸,有时候sql语句后面有分好导致这种错误 2.还有一种是从别处copy过来的sql ...
- idea报错。Error:Failed to load project configuration: cannot parse xml file E:\project\.idea\workspace.xml: Error on line 1: 前言中不允许有内容。
因为电脑卡死强制重启电脑后打开idea,进行junit单元测试报错: idea报错.Error:Failed to load project configuration: cannot parse x ...
- MySQL查询语句报错 sql_mode=only_full_group_by 问题
升级MySQL到5.7后,查询语句总是报sql_mode=only_full_group_by问题,总结归纳了两种解决方案,推存第二种解决方案. 报错信息: [Err] 1055 - Expressi ...
- git 报错:error: failed to push some refs to 'https://github.com/Anderson-An/******.git'(已解决)
提交push 报错: $ git push origin masterTo https://github.com/Anderson-An/******.git ! [rejected] master ...
- 监听lsnrctl status查询状态报错linux error 111:connection refused
报错现象 今天给客户一个单实例环境配置监听,创建正常,查询状态异常报错 tns tns tns linux error :connection refused 匹配MOS Starting TNS L ...
- alert日志报错:ERROR: failed to establish dependency between database RACDB and diskgroup resource ora.DATA.dg
一.打开数据库alert日志,发现有报错 ERROR: failed to establish dependency between database RACDB and diskgroup reso ...
- struts2启动报错:ERROR com.opensymphony.xwork2.conversion.impl.DefaultConversionPropertiesProcessor - Conversion registration error
[framework] 2019-12-05 11:34:05,441 - org.springframework.web.context.ContextLoader -5352 [RMI TCP C ...
- mybatis xml中是sql语句报错: Error creating document instance. Cause: org.xml.sax.SAXParseException: The
最近项目折腾了老半天,找了资料才知道是这么回事... 因为语句中有一个小于号“<”,在XML中,会被当成一个页面元素来解析,不会处理为mysql的SQL语句的组成部分,修改如下: 1.在xml的 ...
- github commit 报错:error: failed to push some refs to 'https:'错误解决方法
为什么会出现这个问题呢? 因为我在github中删除了一个文件readme.txt,但是本地并不知道我删除了readme.txt,本地中还保存了readme.txt文件,导致了云端的文件,和本地的文件 ...
随机推荐
- poi入门之读写excel
Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程式对Microsoft Office格式档案读和写的功能.该篇是介绍poi基本的 ...
- 找到python官方标准库文档
python中有很多标准库.我们没法记住全部标准库,但是可以在:https://docs.python.org/3/py-modindex.html 中查看标准库的索引 在python的官方文档中,如 ...
- Problem A
Problem Description Given a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum ...
- hdu 1011 Starship Troopers(树形DP入门)
Starship Troopers Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Other ...
- Strange fuction
Strange fuction Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...
- 2015ACM/ICPC亚洲区沈阳站 B-Bazinga
Bazinga Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Sub ...
- 前端安全之CSRF攻击
前端安全之CSRF攻击 转载请注明出处:unclekeith: 前端安全之CSRF攻击 CSRF定义 CSRF,即(Cross-site request forgery), 中文名为跨站请求伪造.是一 ...
- javascript 可多选的下拉框 multiselect
首先引用一个写的很好的博客http://www.cnblogs.com/landeanfen/p/5013452.html 我使用的是bootstrap-multiselect,实现功能是 选择下拉框 ...
- AMD 和 CMD 的区别
AMD 规范在这里:https://github.com/amdjs/amdjs-api/wiki/AMD CMD 规范在这里:https://github.com/seajs/seajs/issue ...
- 原生addClass 方法 添加类函数
function addClass(id,new_class){ var i,n=0; new_class=new_class.split(","); ...