Sql 使用knex实现的视图迁移错误
我有一个SQL查询,是我的公司导师编写的,它创建了一个包含以下列的表:凭证Id、Sql 使用knex实现的视图迁移错误,sql,postgresql,knex.js,Sql,Postgresql,Knex.js,我有一个SQL查询,是我的公司导师编写的,它创建了一个包含以下列的表:凭证Id、数量、使用的和剩余的,然而,他向我展示了一个我在postgres数据库中需要什么的示例,并将其写在查询工具中。我做了一些小的修改,但是当我试图通过迁移创建物化视图时,以下查询抛出一个错误: 以下是他在postgres上的查询工具中写下的查询,该工具工作起来很有魅力: SELECT v.voucher_id,v.quantity, COUNT(ov.voucher_id) AS "used", v.quantity -
数量、使用的
和剩余的
,然而,他向我展示了一个我在postgres数据库中需要什么的示例,并将其写在查询工具中。我做了一些小的修改,但是当我试图通过迁移创建物化视图时,以下查询抛出一个错误:
以下是他在postgres上的查询工具中写下的查询,该工具工作起来很有魅力:
SELECT v.voucher_id,v.quantity, COUNT(ov.voucher_id) AS "used", v.quantity - COUNT(ov.voucher_id) AS "remaining"
FROM public.vouchers v
LEFT OUTER JOIN public.order_vouchers ov ON (v.voucher_id = ov.voucher_id)
GROUP BY v.voucher_id, v.quantity
在使用knex进行迁移时,我有:
CREATE MATERIALIZED VIEW mv_vouchers
SELECT * FROM vouchers,
SELECT v.voucher_id,v.quantity, COUNT(ov.voucher_id) AS "used", v.quantity - COUNT(ov.voucher_id) AS "left"
FROM public.vouchers v
LEFT OUTER JOIN public.order_vouchers ov ON (v.voucher_id = ov.voucher_id)
GROUP BY v.voucher_id, v.quantity
这个错误是在SELECT
附近抛出的,我使用的表是凭单
和订单id
。我对这一点非常陌生,非常感谢您的帮助。您有两个SELECT
子句。这是你想要的吗
CREATE MATERIALIZED VIEW mv_vouchers as
SELECT v.voucher_id, v.quantity, COUNT(ov.voucher_id) AS "used", v.quantity - COUNT(ov.voucher_id) AS "left"
FROM public.vouchers v LEFT OUTER JOIN
public.order_vouchers ov
ON v.voucher_id = ov.voucher_id
GROUP BY v.voucher_id, v.quantity;
啊,我在考虑迁移如何在不使用SELECT*FROM dictionals
的情况下获取所有凭证
表数据,我假设postgres查询工具对所有表数据都有自动作用域,而迁移没有。我现在就试试。