DB2的查询sql问题

xtb_0129 2010-03-13 08:16:04
SELECT ORG1.ID AS COMPID,ORG2.ID AS ORGID
FROM APPUSER.OAMP_ORG_ORGANIZATION ORG1 , OAMP_ORG_ORGANIZATION ORG2
WHERE ORG1.PARENTORGID = 1
AND ORG2.ORGPATH = '%'||RTRIM(LTRIM(CHAR(ORG2.ID)))||'%'



SQL报了下面的错误,请问如何解决呢?
[color=#FF0000]
19:32:08.843 DBMS CMS -- Error: [IBM][CLI Driver][DB2/AIX64] SQL0132N LIKE 谓词或 POSSTR 标量函数无效,因为第一操作数不是字符串表达式或第二操作数不是字符串。 SQLSTATE=42824
[/color]
...全文
129 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
maitianhust 2010-03-23
  • 打赏
  • 举报
回复
% 要用转义吧,我猜测。不知道你想搜索什么,条件是什么。
lchy110 2010-03-17
  • 打赏
  • 举报
回复

SELECT ORG1.ID AS COMPID,ORG2.ID AS ORGID
FROM APPUSER.OAMP_ORG_ORGANIZATION ORG1 , OAMP_ORG_ORGANIZATION ORG2
WHERE ORG1.PARENTORGID = 1
AND LOCATE (RTRIM(LTRIM(CHAR(ORG2.ID))),ORG2.ORGPATH)>0


这样了 locate 也和%like%的功效一样
chenkanglei 2010-03-15
  • 打赏
  • 举报
回复
AND ORG2.ORGPATH = '%'||RTRIM(LTRIM(CHAR(ORG2.ID)))||'%'

PATH 看名称好象是个路径,%s??
yangxiao_jiang 2010-03-14
  • 打赏
  • 举报
回复
加%是为了使用like吧 ?
AND ORG2.ORGPATH like '%'||RTRIM(LTRIM(CHAR(ORG2.ID)))||'%'

5,889

社区成员

发帖
与我相关
我的任务
社区描述
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
社区管理员
  • DB2
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧