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文件,导致了云端的文件,和本地的文件 ...
随机推荐
- iOS开发中使用文字图标iconfont
在iOS的开发中,各种图标的使用是不可避免的,如果把全部图标做成图片放在项目中,那么随着项目的逐渐庞大起来,图片所占的地方就会越来越大,安装包也就随之变大了,如果图标需要根据不同的场景改变使用不同的颜 ...
- Java基础总结--泛型总结
-----泛型------JDK1.5出现的机制1.泛型出现的原因--简化书写,提高安全性技术的由来是为了解决问题,现在存在该问题,所有的容器定义类型为Object,所以任何对 象均可以放入容器--进 ...
- LeetCode 548. Split Array with Equal Sum (分割数组使得子数组的和都相同)$
Given an array with n integers, you need to find if there are triplets (i, j, k) which satisfies fol ...
- zabbix3.2源码搭建
首先环境是标准的lnmp 1.创建zabbix组和系统用户来管理 groupadd zabbix useradd -g zabbix zabbix -s /sbin/nologin 2.在mysql ...
- 补写:Best Coder #85 1001 Sum(前缀和)
sum Accepts: 640 Submissions: 1744 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/13107 ...
- Windows下caffe的配置和调用caffe库(二)
二. Caffe库的调用: 新建空白项目,将配置管理器更改为x64运行方式.(release和Debug均可). Debug配置: 1) 包含目录: D:\caffe-master\incl ...
- AngularJS学习篇(二十二)
AngularJS 依赖注入 什么是依赖注入 wiki 上的解释是:依赖注入(Dependency Injection,简称DI)是一种软件设计模式,在这种模式下,一个或更多的依赖(或服务)被注入(或 ...
- Oracle Database 12c Release 2安装详解
第1章 Oracle Database 12c Release 2安装详解 1.1 下载方法 oracle官网https://www.oracle.com 1)打开官方网站,找到下载连接 2)选择更多 ...
- Set的常用方法(java)
一.新增:重复新增的值会被覆盖 代码: Set<String> ss=new HashSet<String>(); ss.add("a");ss.add(& ...
- php多个文件上传
表单如下 <form class="form-horizontal" action="{:U('System/addAdvert')}" method=& ...