使用 MySQL 获取字符串中最大值的代码示例

本文提供一个使用 MySQL 代码从字符串 '-2.79,-2.63,-1.96,-0.54,-0.44,-0.68,-0.62,-1.30,-1.49' 中提取最大值的示例。

SELECT MAX(CAST(value AS DECIMAL(10,2))) FROM 
(
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('-2.79,-2.63,-1.96,-0.54,-0.44,-0.68,-0.62,-1.30,-1.49', ',', numbers.n), ',', -1) AS value
FROM 
(
SELECT @row := @row + 1 AS n FROM 
(
SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9
) t1,
(
SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9
) t2,
(
SELECT @row := 0
) t3
) numbers
WHERE CHAR_LENGTH('-2.79,-2.63,-1.96,-0.54,-0.44,-0.68,-0.62,-1.30,-1.49') - CHAR_LENGTH(REPLACE('-2.79,-2.63,-1.96,-0.54,-0.44,-0.68,-0.62,-1.30,-1.49', ',', '')) >= numbers.n - 1
) t;

代码说明:

  1. 使用 SUBSTRING_INDEX 函数提取字符串中的每个数字。
  2. 使用 CAST 函数将提取的字符串转换为数字类型。
  3. 使用 MAX 函数获取最大值。

注意:

  • 该代码仅适用于字符串中数字以逗号分隔的情况。
  • 如果字符串中包含其他字符,需要根据实际情况修改代码。
  • 可以使用更简洁的代码,但需要了解 SUBSTRING_INDEX 函数的用法。

希望本文能帮助您了解如何使用 MySQL 代码获取字符串中最大值。


原文地址: http://www.cveoy.top/t/topic/nj5a 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录