示例解析
例如,登录名是 ANOAK(Andy Li,居住在 Oak Park)
示例
1 2 3 4 5 6 7 8 |
|
解答
根据题意以及示例结果,可以看到登录名全是大写,所以需要用到函数 upper()
,然后需要将顾客联系人前两个字符和所在城市的前三个字符相拼接,则需要用到函数 concat()
,再接着就是需要从 cust_name
和 cust_city
中截取字符串,则需要用到 substring()
,最后则是通过将字符串拼接转换之后取别名为 user_login
,需要用到关键字 AS
。以上提到的三个函数用法如下:
-
upper(字符串)
:将字符串中所有字符转换为大写。 -
substring(字符串, 起始位置, 截取的字符数)
,需要注意的是起始位置是从 1 开始的。 -
concat(字符串 1, 字符串 2, 字符串 3, …)
1 |
|
SQL23 返回 2020 年 1 月的所有订单的订单号和订单日期
描述
Orders 订单表
| order_num | order_date |
| — | — |
| a0001 | 2020-01-01 00:00:00 |
| a0002 | 2020-01-02 00:00:00 |
| a0003 | 2020-01-01 12:00:00 |
| a0004 | 2020-02-01 00:00:00 |
| a0005 | 2020-03-01 00:00:00 |
问题
编写 SQL 语句,返回 2020 年 1 月的所有订单的订单号(order_num)和订单日期(order_date),并按订单日期升序排序
【示例结果】
返回订单号 order_num,和 order_date 订单时间
| order_num | order_date |
| — | — |
| a0001 | 2020-01-01 00:00:00 |
| a0003 | 2020-01-01 12:00:00 |
| a0002 | 2020-01-02 00:00:00 |
示例解析
a0001、a0002、a0003 时间属于 2020 年 1 月
示例
1 2 3 4 5 6 7 8 9 10 |
|
解答
其实我们依然可以将本题看做模糊查询,只要订单日期满足对应条件即可,可以使用关键字 WHERE … LIKE …
来实现。
1 |
|
此外,SQL 中也提供了对于日期的操作函数 date_format()
,用于返回日期的一部分。
1 |
|
另外,我们还可以单独提取出日期中的年份和月份,然后将两个条件串联,筛选出同时满足两个条件的数据。
1 |
|
SQL24 确定已售出产品的总数
描述
OrderItems 表代表售出的产品,quantity 代表售出商品数量。
| quantity |
| — |
| 10 |
| 100 |
| 1000 |
| 10001 |
| 2 |
| 15 |
问题
编写 SQL 语句,确定已售出产品的总数。
示例结果
返回 items_ordered 列名,表示已售出商品的总数。
| items_ordered |
| — |
| 11128 |
示例
1 2 3 4 5 |
|
解答
考察求和函数以及取别名两个知识点,取别名需要关键字 AS
,而且可要可不要。
而求和函数则是 SUM(列名)
,它会统计列中所有记录的综合。
1 |
|
SQL25 确定已售出产品项 BR01 的总数
描述
OrderItems 表代表售出的产品,quantity 代表售出商品数量,产品项为 prod_id。
| quantity | prod_id |
| — | — |
| 10 | AR01 |
| 100 | AR10 |
| 1000 | BR01 |
| 10001 | BR010 |
问题
修改创建的语句,确定已售出产品项(prod_id)为 “BR01” 的总数。
示例结果
返回商品项已订购订单数
| items_ordered |
| — |
| 1000 |
示例解析
已订购商品 BR01 的数量 quantity 为 1000。
示例
1 2 3 4 5 6 |
|
解答
主要考察的知识点:
- 求和函数:
SUM()
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
最后
按照上面的过程,4个月的时间刚刚好。当然Java的体系是很庞大的,还有很多更高级的技能需要掌握,但不要着急,这些完全可以放到以后工作中边用别学。
学习编程就是一个由混沌到有序的过程,所以你在学习过程中,如果一时碰到理解不了的知识点,大可不必沮丧,更不要气馁,这都是正常的不能再正常的事情了,不过是“人同此心,心同此理”的暂时而已。
“道路是曲折的,前途是光明的!”
…(img-Npt3m2MK-1711999906915)]
最后
按照上面的过程,4个月的时间刚刚好。当然Java的体系是很庞大的,还有很多更高级的技能需要掌握,但不要着急,这些完全可以放到以后工作中边用别学。
学习编程就是一个由混沌到有序的过程,所以你在学习过程中,如果一时碰到理解不了的知识点,大可不必沮丧,更不要气馁,这都是正常的不能再正常的事情了,不过是“人同此心,心同此理”的暂时而已。
“道路是曲折的,前途是光明的!”
[外链图片转存中…(img-6omghDjS-1711999906916)]
[外链图片转存中…(img-p9E0pI6z-1711999906916)]