Mysql sql-在另一侧联合所有和内部联接

Mysql sql-在另一侧联合所有和内部联接,mysql,sqlyog,Mysql,Sqlyog,我希望查询能够在何处实现 与我的内部连接具有相同的值 应将其唯一值作为第一个值 列,在这里的图片中: 我只想输出图中的红线 以下是我的疑问: SELECT it.Date AS 'Date', it.invoice AS 'Invoice No.', it.company AS 'Company', it.total_amount AS 'Total Amount' FROM invoicesummary_tbl it WHERE it.total !=0

我希望查询能够在何处实现 与我的内部连接具有相同的值 应将其唯一值作为第一个值 列,在这里的图片中:

我只想输出图中的红线

以下是我的疑问:

  SELECT it.Date AS 'Date', it.invoice AS 'Invoice No.', 
         it.company AS 'Company', it.total_amount AS 'Total Amount'
  FROM invoicesummary_tbl it
  WHERE it.total !=0 
  UNION ALL
  SELECT itt.Date AS 'Date',rt.revises_no AS 'Invoice_No.', itt.company AS 
  'Company', 
       itt.total_amount AS 'Total Amount'   
  FROM revises_tbl rt
  INNER JOIN invoicesummary_tbl itt
  ON itt.invoice=rt.invoice

使用
DISTINCT
关键字:

SELECT DISTINCT *
  FROM (SELECT it.Date AS 'Date',
               it.invoice AS 'Invoice No.',
               it.company AS 'Company',
               it.total_amount AS 'TotalAmount'
          FROM invoicesummary_tbl it
         WHERE it.total != 0
        UNION ALL
        SELECT itt.Date AS 'Date',
               rt.revises_no AS 'Invoice_No.',
               itt.company AS 'Company',
               itt.total_amount AS 'Total Amount'
          FROM revises_tbl rt
               INNER JOIN invoicesummary_tbl itt ON itt.invoice = rt.invoice
) AS a

使用
DISTINCT
关键字:

SELECT DISTINCT *
  FROM (SELECT it.Date AS 'Date',
               it.invoice AS 'Invoice No.',
               it.company AS 'Company',
               it.total_amount AS 'TotalAmount'
          FROM invoicesummary_tbl it
         WHERE it.total != 0
        UNION ALL
        SELECT itt.Date AS 'Date',
               rt.revises_no AS 'Invoice_No.',
               itt.company AS 'Company',
               itt.total_amount AS 'Total Amount'
          FROM revises_tbl rt
               INNER JOIN invoicesummary_tbl itt ON itt.invoice = rt.invoice
) AS a

我想第二次查询可能会重复数据。你可以试试

 SELECT it.Date AS 'Date', it.invoice AS 'Invoice No.', 
         it.company AS 'Company', it.total_amount AS 'Total Amount'
  FROM invoicesummary_tbl it
  WHERE it.total !=0 
  UNION ALL
  SELECT DISTINCT itt.Date AS 'Date',rt.revises_no AS 'Invoice_No.', itt.company AS 
  'Company', itt.total_amount AS 'Total Amount'   
  FROM revises_tbl rt
  INNER JOIN invoicesummary_tbl itt
  ON itt.invoice = rt.invoice

我想第二次查询可能会重复数据。你可以试试

 SELECT it.Date AS 'Date', it.invoice AS 'Invoice No.', 
         it.company AS 'Company', it.total_amount AS 'Total Amount'
  FROM invoicesummary_tbl it
  WHERE it.total !=0 
  UNION ALL
  SELECT DISTINCT itt.Date AS 'Date',rt.revises_no AS 'Invoice_No.', itt.company AS 
  'Company', itt.total_amount AS 'Total Amount'   
  FROM revises_tbl rt
  INNER JOIN invoicesummary_tbl itt
  ON itt.invoice = rt.invoice

如果可以发布表中的样本数据,将有助于澄清问题。如果可以发布表中的样本数据,将有助于澄清问题。