题目:
表:Tweets
±---------------±--------+
| Column Name | Type |
±---------------±--------+
| tweet_id | int |
| content | varchar |
±---------------±--------+
在 SQL 中,tweet_id 是这个表的主键。
content 只包含美式键盘上的字符,不包含其它特殊字符。
这个表包含某社交媒体 App 中所有的推文。
查询所有无效推文的编号(ID)。当推文内容中的字符数严格大于 15 时,该推文是无效的。
以任意顺序返回结果表。
示例 1:
输入:
Tweets 表:
±---------±---------------------------------+
| tweet_id | content |
±---------±---------------------------------+
| 1 | Vote for Biden |
| 2 | Let us make America great again! |
±---------±---------------------------------+
输出:
±---------+
| tweet_id |
±---------+
| 2 |
±---------+
解释:
推文 1 的长度 length = 14。该推文是有效的。
推文 2 的长度 length = 32。该推文是无效的。
思路:
这里考虑到要判断字符的长度,所以引入了Len()函数(mysql中引入length()函数),返回文本字段中值的长度。
由于需要找的是无效推文的编号(ID),那么select寻找的就是tweet_id,其次给出符合的条件为”推文内容中的字符数严格大于 15 时,该推文是无效“,所以代码中的判断条件为:LEN(content) > 15,使用where关键字在表中过滤不符合条件的表格行即可。
代码:
select tweet_id
from Tweets
where LEN(content) > 15