不要在 GROUP BY 内使用 ORDER BY,您可以使用 MAX() 聚合函数。语法如下:SELECT yourNameColumnName, MAX(yourRankColumnName) FROM yourTableName GROUP BY yourNameColumnName;为了理解上述语法,让我们创建一个表。创建表的查询如下:mysql> create table MaxDemo -> ( -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> UserName varchar(20), -> UserRank int -> ); 使用insert命令在表中插入一些记录。查询如下:mysql> insert into MaxDemo(UserName, UserRank) values('Larry', 2); ... 阅读更多
您可以借助 GROUP BY HAVING 子句实现此目的。语法如下:SELECT yourColumnName1, SUM(yourCoumnName2) from yourTableName GROUP BY yourColumnName1 HAVING COUNT(yourCoumnName2) = COUNT(*);为了理解上述语法,让我们创建一个表。创建表的查询如下:mysql> create table SumDemo -> ( -> Id int, -> Amount int -> ); 使用insert命令在表中插入一些记录。查询如下:mysql> insert into SumDemo values(1, 200); ... 阅读更多
您可以使用AND或OR运算符在存储过程中使用带有多个条件的if语句。语法如下:DECLARE X int; DECLARE Y int; SET X = value1; SET Y = value2; IF ( (X < Y AND X > value1 AND Y >value2) OR X! = anyValueToCompare) THEN yourStatement; ELSE yourStatement; END IF现在,为了理解上述语法,让我们创建一个存储过程。创建存储过程的查询如下:mysql> create procedure SP_IFELSEDEMO() -> BEGIN -> DECLARE X int; -> DECLARE Y ... 阅读更多