我正在开发一个使用 mysql 函数 XOR (^) 和 BIT_COUNT() 的 Ruby 应用程序。但是,我现在需要在运行 PyGreSQL 的 Heroku 上运行该应用程序。
我找不到任何可以帮助我的 PyGreSQL 文档。
那么任何人都可以翻译这个 mysql 查询,以便它在 pygresql 数据库上执行时可以工作吗?
SELECT * FROM "photos" WHERE BIT_COUNT(phash ^ 2061756291569501157) <= 15
pygresql 给我错误
ERROR: operator does not exist: text ^ bigint
谢谢。
最佳答案
SELECT *
FROM photos
WHERE (
SELECT SUM(((phash::bigint # 2061756291569501157) >> bit) & 1)
FROM generate_series(0, 63) bit
) <= 15
关于mysql - 将此 MySQL 查询转换为 PyGreSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5459487/