-将字段中的最大值(小)值分组
复制代码代码如下所示:
*
数据如下:
Name Val的备忘录
A 2 A2(A的第二个值)
1 A1的第一个值
第三值的3 A3:a
b 1 B1的第一个值
b 3 B3的第三个值
B 2 b2b2b2b2
B 4 b4b4
B 5 b5b5b5b5b5
* /

-创建一个表并插入数据:
复制代码代码如下所示:
创建测试表(name varchar(10),Val int,备忘录varchar(20))
插入的TB值(A,2,'a2(第二值))
插入的TB值(第一个值A,1,步骤--)
插入的TB值(第三值A,3,'a3:)
插入的TB值(第一个值of'b ',1,'b1—B)
插入的TB值(第三值of'b ',3,'b3:B)
插入的TB值(B,2,'b2b2b2b2)
插入的TB值(B,4,'b4b4)
插入的TB值(B,5,'b5b5b5b5b5)
去

一、根据名字取的价值线的最大值的数据包
复制代码代码如下所示:
方法1:从结核A中选择A(从结核病中选择max(缬氨酸))
-方法2:
从不存在的TB A中选择A(从TB中选择1)
-方法3:
从结核A中选择A,从TB中选择名称,max(缬氨酸)。
-方法4:
从TB中选择一个内部连接(选择名称,max(瓦尔))
方法5
从TB A选择1 > >(从TB选择name(*),其中name =
*
Name Val的备忘录
-----------------------------------------
第三值的3 A3:a
B 5 b5b5b5b5b5

* /

我建议1,3,4的使用,结果表明,3效率是相同的,2, 5的效率是差了一点,但我有3、4相同的效率,毫无疑问,1是不同的,不想做的事。

-两个,最小值的行的数据由名称包拾取。
复制代码代码如下所示:
方法1:从结核A中选择A(从结核病中选择最小值)
-方法2:
从不存在的TB A中选择A(从TB中选择1)
-方法3:
从结核A中选择A,从TB中选择名称、最小(缬氨酸)缬氨酸。
-方法4:
从TB中选择一个内部连接(选择名称,最小(空))
方法5
从TB A选择1 > >(从TB选择name(*),其中name =
*
Name Val的备忘录
-----------------------------------------
1 A1的第一个值
b 1 B1的第一个值

* /

-三,第一行所在的数据按名称分组。
复制代码代码如下所示:
从TB A中选择a(在TB中选择top 1)
*
Name Val的备忘录
-----------------------------------------
A 2 A2(A的第二个值)
b 1 B1的第一个值
* /

-四,根据名称包随机拾取一个数据。
复制代码代码如下所示:
从TB A中选择a(在TB中选择top 1)
Name Val的备忘录
-----------------------------------------
1 A1的第一个值
B 5 b5b5b5b5b5

* /

-五,根据名称包的最小值(n)的两个
复制代码代码如下所示:
从TB A中选择2> >(从TB中选择*
从TB A中选择A *(从TB中选择计数(*))
*
Name Val的备忘录
-----------------------------------------
1 A1的第一个值
A 2 A2(A的第二个值)
b 1 B1的第一个值
B 2 b2b2b2b2

* /

-六,取最大的两个(n)缬氨酸按名称分组
复制代码代码如下所示:
从TB A选择2 > >(从TB选择name(*),其中name =
从TB A中选择瓦迩(从中选择top 2)
从TB A中选择A *(从TB中选择计数(*))
*
Name Val的备忘录
-----------------------------------------
A 2 A2(A的第二个值)
第三值的3 A3:a
B 4 b4b4
B 5 b5b5b5b5b5
* /


七、如果整行数据是重复的,所有的列都是相同的(例如,5,6两线在下表相同)。
将最大的两个(n)个缬氨酸按名称分组。
复制代码代码如下所示:
*
数据如下:
Name Val的备忘录
A 2 A2(A的第二个值)
1 A1的第一个值
1 A1的第一个值
第三值的3 A3:a
第三值的3 A3:a
b 1 B1的第一个值
b 3 B3的第三个值
B 2 b2b2b2b2
B 4 b4b4
B 5 b5b5b5b5b5

* /


附录:MySQL组和按顺序的研究

很难进行两天的数据查询,主要原因是对组的理解不够深入。
这种需求,我想很多人都见过。下面是我模拟我的内容表
我现在需要把每个类别的最新内容去掉。

选择category_id订单的日期` `试验组
给出如下结果
显然,这不是我想要的数据,因为msyql已经执行的顺序。



引用

写作顺序:选择…从…哪里...组…有...以..
执行命令:从…哪里...组…有...选择…顺序…
因此,顺序的结果是组的结束。
结果如下。
当你到组,你得到多组基于category_id
当您选择时,上述各组的第一条消息如下所示
即使是订单也只是从上面的结果排序,而不是每个类别的最新信息。
回到我的目的-分类的最新信息
根据以上分析,按组分组只选择分组中的第一个信息,有两种解决方案。
1,+(按组排序)
2、手和脚的形式返回数据(即子查询)

解决方法+组
排序功能组,我只能找到group_concat(),可以进行排序,但group_concat功能连接组中的字段的值。

选择group_concat(ID为`日期` DESC)从`测试`组category_id
进行第二次改进

SELECT * FROM `测试`在ID(选择substring_index(group_concat,ID顺序,group_concat),

子查询的解决方案

SELECT * FROM(SELECT * FROM `测试`顺序`日期` DESC)`温度`组