SQL常见函数及题目整理

  1. 常用函数说明
    序号 函数名称 函数功能描述
    1 LENGTH(X)
    2 LOWER(X)
    3 UPPER(X)
    4 REPLACE(X,old,new)
    5 SUBSTR(X,start[,length])
    6 CONCAT(X,Y)
    7 NVL(X,VALUE)
    8 NVL2(X,VALUE1,VALUE2)
    9 TO_DATE(X,[,fmt])
    10 TO_CHAR(d|n[,fmt])

2.SQL语句分组

Table1:
period result
2005/5/9 胜
2005/5/9 胜
2005/5/9 负
2005/5/9 负
2005/5/10 胜
2005/5/10 负
2005/5/10 负

如果要生成下列结果, 该如何写sql语句?
period 胜 负
2005-05-09 2 2
2005-05-10 1 2

答案:

  1. SQL语句列判断的查询问题
    table1表中有A B C三列,用SQL语句实现输出两列:当A列大于B列时选择A列,否则选择B列;当B列大于C列时选择B列,否则选择C列。
    table1
    A B C
    0 2 3
    4 3 2

结果如下:
A_NEW B_NEW
2 3
4 3

答案:

4.请用一个sql语句得出结果
从table1,table2中取出如table3所列格式数据

table1 (业务数据表)

月份mon 部门dep 业绩yj
1月 01 10
1月 02 10
1月 03 5
2月 02 9
2月 03 8
3月 04 8
table2 (部门维表)

部门dep 部门名称dname
01 国内业务一部
02 国内业务二部
03 国内业务三部
04 国际业务部
05 内部测试部

table3 (结果表)

部门dep 1月业绩 2月业绩 3月业绩
01 10 null null
02 10 9 null
03 5 8 null
04 null null 8
05 null null null

答案:

5.计算月累计,年累计数据
请根据Table1,Table2,Table3 编写SQL,输出Table4的结果。

Table1 为各个产品的到天的销售数量数据。
注意:数据在日期维度(Period_code)是不连续的。
Table1(业务数据表)
PERIOD_CODE PRODUCT_CODE PRODUCT_NAME AMOUNT(当日销量)
20210101 P01 冰箱 10
20210102 P01 冰箱 2
20210103 P02 冷柜 1
20210105 P01 冰箱 1
20210105 P02 冷柜 1
20210205 P01 冰箱 1
20210205 P02 冷柜 1

Table2(日期维表)
PERIOD_CODE PERIOD_MONTH PERIOD_YEAR
20210101 1 2021
20210102 1 2021
… … …
20210201 2 2021
… … …
20210228 2 2021

Table3(产品维表)
PRODUCT_CODE PRODUCT_NAME
P01 冰箱
P02 冷柜

Tabel4 (结果表)
输出结果为连续日期,20210101—20210228的当日销量,月累销量,年累销量
PERIOD_CODE PRODUCT_NAME AMOUNT_DAY(当日数) AMOUNT_MONTH(月累计) AMOUNT_YEAR(年累计)
20210101 冰箱 10 10 10
20210102 冰箱 2 12 12
20210103 冰箱 12 12
20210104 冰箱 12 12
20210105 冰箱 1 13 13
20210106 冰箱 13 13
20210107 冰箱 13 13
20210108 冰箱 13 13
20210109 冰箱 13 13
20210110 冰箱 13 13
20210111 冰箱 13 13
20210112 冰箱 13 13
20210113 冰箱 13 13
20210114 冰箱 13 13
20210115 冰箱 13 13
20210116 冰箱 13 13
20210117 冰箱 13 13
20210118 冰箱 13 13
20210119 冰箱 13 13
20210120 冰箱 13 13
20210121 冰箱 13 13
20210122 冰箱 13 13
20210123 冰箱 13 13
20210124 冰箱 13 13
20210125 冰箱 13 13
20210126 冰箱 13 13
20210127 冰箱 13 13
20210128 冰箱 13 13
20210129 冰箱 13 13
20210130 冰箱 13 13
20210131 冰箱 13 13
20210201 冰箱 13
20210202 冰箱 13
20210203 冰箱 13
20210204 冰箱 13
20210205 冰箱 1 1 14
20210206 冰箱 1 14
20210207 冰箱 1 14
20210208 冰箱 1 14
20210209 冰箱 1 14
20210210 冰箱 1 14
20210211 冰箱 1 14
20210212 冰箱 1 14
20210213 冰箱 1 14
20210214 冰箱 1 14
20210215 冰箱 1 14
20210216 冰箱 1 14
20210217 冰箱 1 14
20210218 冰箱 1 14
20210219 冰箱 1 14
20210220 冰箱 1 14
20210221 冰箱 1 14
20210222 冰箱 1 14
20210223 冰箱 1 14
20210224 冰箱 1 14
20210225 冰箱 1 14
20210226 冰箱 1 14
20210227 冰箱 1 14
20210228 冰箱 1 14
20210101 冷柜
20210102 冷柜
20210103 冷柜 1 1 1
20210104 冷柜 1 1
20210105 冷柜 1 2 2
20210106 冷柜 2 2
20210107 冷柜 2 2
20210108 冷柜 2 2
20210109 冷柜 2 2
20210110 冷柜 2 2
20210111 冷柜 2 2
20210112 冷柜 2 2
20210113 冷柜 2 2
20210114 冷柜 2 2
20210115 冷柜 2 2
20210116 冷柜 2 2
20210117 冷柜 2 2
20210118 冷柜 2 2
20210119 冷柜 2 2
20210120 冷柜 2 2
20210121 冷柜 2 2
20210122 冷柜 2 2
20210123 冷柜 2 2
20210124 冷柜 2 2
20210125 冷柜 2 2
20210126 冷柜 2 2
20210127 冷柜 2 2
20210128 冷柜 2 2
20210129 冷柜 2 2
20210130 冷柜 2 2
20210131 冷柜 2 2
20210201 冷柜 2
20210202 冷柜 2
20210203 冷柜 2
20210204 冷柜 2
20210205 冷柜 1 1 3
20210206 冷柜 1 3
20210207 冷柜 1 3
20210208 冷柜 1 3
20210209 冷柜 1 3
20210210 冷柜 1 3
20210211 冷柜 1 3
20210212 冷柜 1 3
20210213 冷柜 1 3
20210214 冷柜 1 3
20210215 冷柜 1 3
20210216 冷柜 1 3
20210217 冷柜 1 3
20210218 冷柜 1 3
20210219 冷柜 1 3
20210220 冷柜 1 3
20210221 冷柜 1 3
20210222 冷柜 1 3
20210223 冷柜 1 3
20210224 冷柜 1 3
20210225 冷柜 1 3
20210226 冷柜 1 3
20210227 冷柜 1 3
20210228 冷柜 1 3

答案:

  1. 请以Oracle数据库为例,谈一下对SQL优化的方法。
    答案:

  2. 算法理解
    桌上有6个小球,其外观完全相同,其中有1个小球,内部存在细微的空心。
    工具:天平一个,无砝码,每个托盘最多可称量10个小球。
    在不考虑运气的情况下,请问至少需要几次测量,可以找出空心的小球。
    并阐述一下算法。

答案:

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大数据小理

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值