我的语句如下:
select * from
(select a.*, ROWNUM RN FROM
(select p.id productid, p.name pname, p.descr pdescr, p.normalprice, p.memberprice, p.pdate, p.categoryid , c.id categoryid, c.name cname, c.descr cdescr, c.pid, c.cno, c.grade from product p join category c on (p.categoryid = c.id) order by p.pdate desc)
a WHERE ROWNUM <= 0) WHERE RN > 2一直报ora:00918错误,未明确定义列,找了半天还是找不出原因,请帮忙解决。
select * from
(select a.*, ROWNUM RN FROM
(select p.id productid, p.name pname, p.descr pdescr, p.normalprice, p.memberprice, p.pdate, p.categoryid , c.id categoryid, c.name cname, c.descr cdescr, c.pid, c.cno, c.grade from product p join category c on (p.categoryid = c.id) order by p.pdate desc)
a WHERE ROWNUM <= 0) WHERE RN > 2一直报ora:00918错误,未明确定义列,找了半天还是找不出原因,请帮忙解决。
(select p.id productid, p.name pname, p.descr pdescr, p.normalprice, p.memberprice, p.pdate, p.categoryid , c.id categoryid, c.name cname, c.descr cdescr, c.pid, c.cno, c.grade from product p join category c on (p.categoryid = c.id) order by p.pdate desc)
a WHERE ROWNUM <= 0在执行全部看看啊,select * 换成具体的列明试试
(select a.*, ROWNUM RN FROM
(select p.id productid, p.name pname, p.descr pdescr, p.normalprice, p.memberprice, p.pdate, p.categoryid , c.id categoryid, c.name cname, c.descr cdescr, c.pid, c.cno, c.grade from product p join category c on (p.categoryid = c.id) order by p.pdate desc)
a WHERE ROWNUM <= 0) WHERE RN > 2 这红色标识的是相同的,当a.*时,是区分不开的