create table dict {id,word varchar2(255))。如何根据长度查询字符串
我在'word'字段中存储了不同长度的字符串。如何查询以下情况: -
- 搜索的是长度为4个字符
- 搜索的是长度超过4个字符
- 搜索具有4-8所有单词全部关键词所有关键词字符(含)
- 搜寻其在长度上较小比4个字符
Env的所有词:H2,MySQL的。该数据由英文单词,而是想知道的局限性,如果你使用多字节数据(例如日本)
create table dict {id,word varchar2(255))。如何根据长度查询字符串
我在'word'字段中存储了不同长度的字符串。如何查询以下情况: -
Env的所有词:H2,MySQL的。该数据由英文单词,而是想知道的局限性,如果你使用多字节数据(例如日本)
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
你可以细化问题并解释documentation中字符串函数不清楚的内容。
CHAR_LENGTH()文档状态清楚,
返回字符串str, 在字符测量的长度。多字节 字符计为单个 字符。这意味着,对于包含五个两字节 字符,length()返回10, 而CHAR_LENGTH()一个 字符串返回5