当前位置: 代码迷 >> DB2 >> 哪位高手能改的SQL
  详细解决方案

哪位高手能改的SQL

热度:1649   发布时间:2013-02-26 00:00:00.0
谁能改的SQL?
SELECT * FROM (SELECT t.users,t.storageSize,t.storageTime,t.storageUsed,t.status,t.id,t.types,rownumber() over()as rn FROM News t JOIN (SELECT STATUS FROM USER WHERE username='user') u ON LOCATE(t.status,u.status)>0 WHERE t.storageUsed='aa' ) AS a1 WHERE a1.rn BETWEEN 1 AND 10



首先报的 locate function 错误
谁能解决下?

t.status='3'
u.status='3,4,5'

------解决方案--------------------------------------------------------
检查
SELECT t.users,t.storageSize,t.storageTime,t.storageUsed,t.status,t.id,t.types,rownumber() over()as rn FROM News

SELECT STATUS FROM USER WHERE username='sipouser'

中的status的值
------解决方案--------------------------------------------------------
t.status是什么类型 字符串还是数值 ?
------解决方案--------------------------------------------------------
探讨
刚刚向NEWS 插入了一条测试数据。 但是SQL 依然报这个错误。

locate('2',u.status)>0 )

显示有数据

locate(t.status,u.status)>0 )

报错。 t.status=4 u.status='1,2,3,4'
  相关解决方案