Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从具有不同于列的值的行中选择所有值_Php_Select_Mysqli_Phpmyadmin_Distinct - Fatal编程技术网

Php 从具有不同于列的值的行中选择所有值

Php 从具有不同于列的值的行中选择所有值,php,select,mysqli,phpmyadmin,distinct,Php,Select,Mysqli,Phpmyadmin,Distinct,id |订单| id |跟踪|状态|更新|时间 表名:ndc 1100204835124124304 0 2017-06-29 00:00:00 2100204874124104482 0 2017-06-29 00:00:00 3100204835124124304 0 2017-06-29 00:00:00 我需要从ndc中选择所有值(id、order\u id、tracking\u no),其中order\u id应该是唯一的,因为可能存在重复的值 结果应该输出行中的所有值,因为我需

id |订单| id |跟踪|状态|更新|时间


表名:ndc


1100204835124124304 0 2017-06-29 00:00:00

2100204874124104482 0 2017-06-29 00:00:00

3100204835124124304 0 2017-06-29 00:00:00


我需要从ndc中选择所有值(id、order\u id、tracking\u no),其中order\u id应该是唯一的,因为可能存在重复的值

结果应该输出行中的所有值,因为我需要进一步使用它们

例如,在上表中,订单id 100204835是重复的。

使用此

Select * from table group by order_id;

从ndc中选择不同的订单id、id、跟踪号

您还可以将其用于多列上的distinct


您需要将DISTINCT与字段名一起使用,并指定其他字段

SQL:
从表中选择不同的订单id、id、跟踪、状态、更新时间

欲知更多答案,请按以下内容:

尝试以下操作:
按订单id从ndc组中选择*

查询:

您可以使用简单的
按订单分组\u id

语法:
从表中按字段名称分组选择*

注意:A
DISTINCT
groupby
通常生成相同的查询计划,因此两个查询结构的性能应该相同


没有一个答案对我有效,所以这里有一个是我得到的。使用col4上的bu组,同时获取其他列的最大值

select max(col1) as col1,max(col2) as col2,max(col3) as col3
  , col4
  from 
    table1
  group by col4

选择后,请尝试使用
DISTINCT
。示例:
SELECT*,与表中的顺序id不同
,但这取决于您是否需要单行数据,而不管第二行的第二个数据的重要性。否,这甚至列出了重复的记录。这不起作用!如果两行的订单号相同,则会列出两行
  SELECT id,order_id,tracking_no,status,update_time, DISTINCT order_id FROM ndc;
select max(col1) as col1,max(col2) as col2,max(col3) as col3
  , col4
  from 
    table1
  group by col4