create table dict {id,word varchar2(255))。
我在'word'字段中存储不同长度的字符串。如何查询以下情况: -
环境:h2,mysql。数据由英语单词组成,但如果您使用多字节数据(例如日语)
,则想知道这些限制答案 0 :(得分:1)
SELECT
*
FROM
dict
WHERE
LENGTH(word) = 4 /* 1. */
OR (LENGTH(word) > 4) /* 2. */
OR (LENGTH(word) >=4 AND LENGTH(word) <= 8) /* 3. */
OR (LENGTH(word) <4) /* 4. */
/* Choose the right WHERE clause, based on your case */
对于多字节数据,您应使用CHAR_LENGTH代替LENGTH
答案 1 :(得分:1)
您可以优化问题并解释documentation中字符串函数中不清楚的内容。
CHAR_LENGTH()文档明确指出
返回字符串str的长度, 用字符衡量。一个多字节 角色算作单身 字符。这意味着对于 包含五个双字节的字符串 字符,LENGTH()返回10, 而CHAR_LENGTH()返回5。