Metabase中使用limit表编写SQL遇语法错误的技术问询
问题解决:PostgreSQL中使用关键字作为表名的语法错误
错误原因
limit是PostgreSQL的保留关键字,直接把它当作表名使用时,数据库会将其识别为SQL命令(用于限制查询结果行数的LIMIT子句),而非你要查询的表名,因此触发语法错误。
修正后的SQL代码
WITH limit_data AS ( SELECT l.amount, l.account, l.type, l.created_at, c.seller_id, c.verifier_id FROM "limit" l LEFT JOIN customer c ON l.account = c.customer_id WHERE l.type IN ('MPESA_PREDICTED', 'PROPOSED_KENYA_AGENT', 'MPESA_AUTO', 'MPESA_CHECKED', 'MANUAL') )
说明
在PostgreSQL中,若必须使用保留关键字作为表名、列名等标识符,需要用双引号(")将其包裹,这样数据库会将其视为普通的对象名称,而非SQL命令。
内容的提问来源于stack exchange,提问作者Judith
相关产品推荐
相关产品推荐

