簡體   English   中英

子查詢中“FROM”處或附近的 Postresql 語法錯誤

[英]Postresql syntax error at or near 'FROM' in subquery

我正在嘗試執行如下 psql 子查詢:

SELECT invoices.*, contractors.name AS contractor
FROM (SELECT id AS resource_id,
    'OutgoingInvoice' AS resource_type,
    creation_date AS date,
    number AS description,
    total_gross_amount_cents,
    total_discount_amount_cents,
    'false' AS credit_note,
    created_at
FROM outgoing_invoices
WHERE customer_id = 1
AND payment_status = 'unpaid'
AND cancelled_outgoing_invoice_id IS NULL
AND draft = 'false') invoices
FROM outgoing_invoices
WHERE customer_id = 1
AND payment_status = 'unpaid'
AND cancelled_outgoing_invoice_id IS NULL
AND draft = 'false'

並卡在這里:

ERROR:  syntax error at or near "FROM"
LINE 15: FROM outgoing_invoices

我錯過了什么?

您有重復的 FROM 輸出發票子句。 縮進查詢以使其更清晰可能會有所幫助:

SELECT
    invoices.*,
    contractors.name AS contractor
FROM (
        SELECT
            id AS resource_id,
            'OutgoingInvoice' AS resource_type,
            creation_date AS date,
            number AS description,
            total_gross_amount_cents,
            total_discount_amount_cents,
            'false' AS credit_note,
            created_at
        FROM outgoing_invoices
        WHERE customer_id = 1
            AND payment_status = 'unpaid'
            AND cancelled_outgoing_invoice_id IS NULL
            AND draft = 'false'
    ) invoices
FROM outgoing_invoices
WHERE customer_id = 1
AND payment_status = 'unpaid'
AND cancelled_outgoing_invoice_id IS NULL
AND draft = 'false'

所以在你的情況下它應該是這樣的

SELECT
        invoices.*,
        contractors.name AS contractor
    FROM (
            SELECT
                id AS resource_id,
                'OutgoingInvoice' AS resource_type,
                creation_date AS date,
                number AS description,
                total_gross_amount_cents,
                total_discount_amount_cents,
                'false' AS credit_note,
                created_at
            FROM outgoing_invoices
            WHERE customer_id = 1
                AND payment_status = 'unpaid'
                AND cancelled_outgoing_invoice_id IS NULL
                AND draft = 'false'
        ) invoices

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM