我正在转换PHP脚本,因为数据库已从MysqL切换到Postgresql.
我知道PG没有IF功能,但是有CASE功能.转换此MysqL语句的最佳方法是什么?
SELECT albums.id,
albums.albumname,
sum(if(((albums.id=allalbums.albumid) and
(allalbums.photoid=$photoid)),1,0)) as inalbum
FROM albums, allalbums
GROUP BY albums.id
ORDER BY albums.createdate desc
解决方法:
这样的事情应该起作用:
select
albums.id,
albums.albumname,
sum(
case when ((albums.id=allalbums.albumid) and (allalbums.photoid=$photoid)) then 1
else 0
end
) as inalbum
from albums,allalbums
group by albums.id
order by albums.createdate desc
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。