2014-01-13 23 views
0

我在postgresql中有一个数据库,我保存了一个序列号和一个字符串。我用它来存储我的磁盘上的图像位置。使用posgresql存储映像路由

id_image ------ route

“1”; -----------“./img/one.jpg”

“2”; -----------“./img/two.png”

“3”; -----------“./img/wheels.jpg”

“4”; -----------“./img/core.jpg”

“6”; -----------“./img/idcol.jpg”

我有一个jQuery中的函数,从数据库读取此信息,以便它可以从服务器加载图像,因为它知道位置。问题是,我想为下一张和上一张图片添加两个按钮。现在我得到了这个:

SELECT row_number() OVER (ORDER BY id_image) AS currentpic, id_image, route FROM location.image 

我创建了一个索引结果的选择。我保存和索引在网上当前图片显示的JavaScript,我的想法是发送到查询一个数字,并得到我想要的图片的行。如果我使用id_image作为索引,我可能会得到错误的结果(原因是id_image可能存储4,下一个值可能是6,因为您可以在那里看到)。如果我这样做

SELECT row_number() OVER (ORDER BY id_image) AS currentpic, id_image, route FROM location.image WHERE currentpic = 3 

我有没有发现

感谢您的帮助栏的错误!

+0

“我找到了列未找到的错误”。什么是确切的*,*复制和粘贴*错误的文本?它指定错误消息中的哪一列。 –

回答

1

您必须访问外部查询中的值,就像manual所述。

SELECT currentpic, 
     id_image, 
     route 
FROM (SELECT Row_number() OVER (ORDER BY id_image) AS currentpic, 
       id_image, 
       route 
     FROM location.image) AS q 
WHERE currentpic = 3 
+0

谢谢!它确实有用!对不起,我没有看到手册的那部分:(。 – Asterio