我希望paid_amount不是"0",但每次运行查询时,我都会得到“没有与给定名称和参数类型匹配的运算符。您可能需要添加显式类型转换。”我该怎么做呢?我使用PostgreSQL。
SELECT
*
FROM
vouchers
LEFT JOIN voucher_payment ON vouchers.voucher_id = voucher_payment.voucher_id
LEFT JOIN payment_details ON voucher_payment.payment_id = payment_details.payment_id
WHERE
voucher_payment.claim_transfer IS NOT NULL
AND paid_amount NOT LIKE '0'发布于 2016-09-02 22:19:30
您应该尝试varchar<>它对我有效,因为它可能不是数字0
发布于 2016-08-11 00:00:09
例如,您可以通过发出paid_amount::text != '0‘来进行即时强制转换,但是您需要注意您的结果是预期的。在这里,查看表定义会有所帮助。
https://stackoverflow.com/questions/38876176
复制相似问题