首页 > 解决方案 > 处理 MariaDB 计数查询中的重复列名问题

问题描述

我正在运行以获取 MariaDB 计数的查询出错。这是错误:

错误代码:1060。重复的列名“id_number”

这是我的 SQL 代码:

SELECT COUNT(*) as count FROM (
      SELECT * FROM ((cr.customers
        INNER JOIN (progress_notes_details
        INNER JOIN progress_notes ON progress_notes_details.progress_note_id = progress_notes.id_number) 
        ON customers.id_number = progress_notes.c_id)
        INNER JOIN open_balances ON progress_notes_details.id_number = open_balances.progress_notes_detail_id)
        INNER JOIN
          customer_payer_xref ON customers.id_number = customer_payer_xref.c_id
        WHERE
          (((progress_notes_details.qb_isbillable) IS NULL
            OR (progress_notes_details.qb_isbillable) <> 1)
            AND ((progress_notes_details.date_of_visit) BETWEEN coverage_start AND coverage_end)
            AND ((progress_notes_details.dynamics_status) = 3)
            AND ((customer_payer_xref.payer_id) = 23)
            AND ((customer_payer_xref.primary_secondary_account_type) = 1))
    ) AS qdat 

这可以通过别名解决吗?如果是这样,我不清楚在哪里添加它们。在主查询中?在子查询中?

另外,为了澄清,我只是继承了这段代码——是的,它很高兴。

标签: sqlmariadb

解决方案


Alias customers table as c and use it as c.id_number在其中一个地方,它将删除该重复错误,因为这是您使用 idnumber 多次使用的唯一表,因此重复


推荐阅读