题目1:
写一条 SQL 语句,查询所有无效推文的编号(ID)。当推文内容中的字符数严格大于 15 时,该推文是无效的。
解题思路:
需要先理解char_length(str)和length(str)的区别
1、char_length(str)
(1)计算单位:字符
(2)不管汉字还是数字或者是字母都算是一个字符
2、length(str)
(1)计算单位:字节
(2)utf8编码:一个汉字三个字节,一个数字或字母一个字节。
(3)gbk编码:一个汉字两个字节,一个数字或字母一个字节。
这道题文章都是英文,我认为两个函数都可以用
代码实现:
select tweet_id
from Tweets
where length(content) >15;
题目2:
写一条SQL 查询语句获取 Sales 表中所有产品对应的产品名称 product_name 以及该产品的所有售卖年份 year 和 价格 price 。
解题思路:使用left join
select p.product_name ,s.year ,sprice
from Sales s
left join Product p
on s.product_id=p.product_id;