【问题标题】:Mysql select distinct id's and select first row onlyMysql选择不同的ID并仅选择第一行
【发布时间】:2015-01-15 10:00:29
【问题描述】:

这是我的桌子。我想选择只有第一个相关行的不同'bill_no'。

    +--------------+--------------+-------+------------+
    | id | bill_no | product_name | tax   | total      | 
    +--------------+-------+------+-------+------------+
    | 1  |    12   |   Hairgel    |  10   |        241 |      
    | 2  |    12   |  Spiker gel  |  10   |        300 |      
    | 3  |    13   | Wokzem amba  |  12   |        450 |      
    | 4  |    13   | test prod    |  1    |        145 |      
    | 5  |    14   | wokk         |  3    |         55 |   
    | 6  |    14   | Kamer hyp    |  11   |         46 |      
    | 7  |    15   | Xyombokx     |  2    |        220 |     
    +--------------+-------+------+-------+------------+

我希望数据显示如下,只有不同的“bill_no”-

输出-

    +--------------+--------------+-------+------------+
    | id | bill_no | product_name | tax   | total      | 
    +--------------+-------+------+-------+------------+
    | 1  |    12   |   Hairgel    |  10   |        241 |                
    | 3  |    13   | Wokzem amba  |  12   |        450 |           
    | 5  |    14   | wokk         |  3    |         55 |         
    | 7  |    15   | Xyombokx     |  2    |        220 |     
    +--------------+-------+------+-------+------------+

【问题讨论】:

  • 到目前为止你有没有尝试过?
  • 我不明白请求的目的?您将如何处理数据?
  • @BenjaminPoignant 实际上我正在尝试构建一个计费应用程序。他们不是这个的主表。与账单相关的所有数据都存储在一个单一的数据中。

标签: php mysql database mysqli


【解决方案1】:

您可以使用 GROUP BY 子句。GROUP BY 子句始终按列名返回具有相关组的第一行。

SELECT * FROM `table_1` group by `bill_no` 

【讨论】:

    【解决方案2】:

    使用group by

    select * from youtable group by bill_no
    

    【讨论】:

      【解决方案3】:
      select t1.* 
      from your_table t1
      join
      (
        select min(id) as id
        from your_table
        group by bill_no
      ) t2 on t1.id = t2.id
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-12-17
        • 2016-05-03
        • 1970-01-01
        • 1970-01-01
        • 2015-01-18
        • 2011-03-17
        • 1970-01-01
        • 2020-03-19
        相关资源
        最近更新 更多