gpt4 book ai didi

mysql - 选择具有最大字符串长度的结果

转载 作者:可可西里 更新时间:2023-11-01 07:59:35 26 4
gpt4 key购买 nike

我有一个看起来像这样的表:

+-------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------------+------+-----+---------+----------------+
| id | int(11) unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(30) | NO | | | |
+-------+------------------+------+-----+---------+----------------+

非常简单的表格。出于以下几个原因,我试图找到一种方法来仅选择最大长度为 8 个字符的结果:

1) 为记录集创建的 HTML 表格太窄,无法处理超过 8 个字符的内容。

2) 我们不能在显示名称时将名称截断。

我正在查看 MySQL 手册,但找不到任何可靠的结果。我将尝试在 where 子句中使用 char_length,看看我能想出什么,并将发现的发回,但我希望之前有人这样做过。

最佳答案

您需要使用CHAR_LENGTH 来获取字符的长度。尝试:

SELECT *
FROM tableName
WHERE CHAR_LENGTH(name) <= 8 -- selects 8 characters or below
-- WHERE CHAR_LENGTH(name) = 8 -- selects exactly 8 characters

附加信息:

LENGTH() 返回字符串的长度(以字节为单位)。
CHAR_LENGTH() 返回以字符为单位的字符串长度。

select length(_utf8 '€') as ByteCount, char_length(_utf8 '€') LengthCount

-- Result
-- ============+==============
-- ByteCount + LengthCount
-- ============+==============
-- 3 + 1
-- ============+==============

关于mysql - 选择具有最大字符串长度的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12047425/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com