Heim > Backend-Entwicklung > PHP-Tutorial > MYSQL查询 三列中的最大值

MYSQL查询 三列中的最大值

WBOY
Freigeben: 2016-06-06 20:42:09
Original
2357 Leute haben es durchsucht

如题: mysql 的数据结构 如下

MYSQL查询  三列中的最大值

查询 A B C 三列中的最大值 目前已经有一条sql 可以实现了 想问各位 还可以有其他更好的idea吗..

<code>select id,a,b,c,(a+((b+c+abs(b-c))/2)+abs(a-(b+c+abs(b-c))/2))/2 from test; 
</code>
Nach dem Login kopieren
Nach dem Login kopieren

补充 下午 跟别人 又 学到了一个 greatest 函数

<code>select id,a,b,c,greatest(a,b,c) as max from XXX
</code>
Nach dem Login kopieren
Nach dem Login kopieren

回复内容:

如题: mysql 的数据结构 如下

MYSQL查询  三列中的最大值

查询 A B C 三列中的最大值 目前已经有一条sql 可以实现了 想问各位 还可以有其他更好的idea吗..

<code>select id,a,b,c,(a+((b+c+abs(b-c))/2)+abs(a-(b+c+abs(b-c))/2))/2 from test; 
</code>
Nach dem Login kopieren
Nach dem Login kopieren

补充 下午 跟别人 又 学到了一个 greatest 函数

<code>select id,a,b,c,greatest(a,b,c) as max from XXX
</code>
Nach dem Login kopieren
Nach dem Login kopieren

<code>mysql> set @a = 5, @b = 6, @c = 11;
Query OK, 0 rows affected (0.00 sec)

mysql> select if(@a > @b, if(@a > @c, @a, @c), if(@b > @c, @b, @c)) max;
+------+
| max  |
+------+
|   11 |
+------+
1 row in set (0.00 sec)
</code>
Nach dem Login kopieren

select greatest(a,b,c) max from table_name

.. 查出来 程序处理不行吗?

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage