SQL 面试题(一)
问题来自于CSDN问答,练练SQL吧。

测试数据SQL代码:
if OBJECT_ID('td_ls_2') is not null
drop table td_ls_2
go
if OBJECT_ID('td_ls_1') is not null
drop table td_ls_1
go
create table td_ls_1
(
dh varchar(18) primary key,
Id_gsjg int,
Ymd_rz varchar(8),
Id_ck int,
Id_hyk int,
Id_user int
)
go
create table td_ls_2
(
dh varchar(18) foreign key references td_ls_1(dh),
Id_sp int,
sl int,
Dj_hs decimal(10,1),
Je_hs decimal(10,1),
Flag_cx varchar(4)
)
go
insert into td_ls_1 values('LS0010111052600010',2,'',2,5,14);
insert into td_ls_1 values('LS0010111052600012',2,'',3,0,14);
insert into td_ls_1 values('LS0010111052700016',1,'',1,0,18);
insert into td_ls_1 values('LS0010111052700018',2,'',2,17,18);
insert into td_ls_1 values('LS0010111052800022',1,'',1,17,14);
insert into td_ls_1 values('LS0010111052800023',2,'',3,0,125);
insert into td_ls_1 values('LS0010111052900026',3,'',4,0,14);
go
insert into td_ls_2 values('LS0010111052600010',4053,1,8,8,'no');
insert into td_ls_2 values('LS0010111052600010',202,2,7.3,14.6,'no');
insert into td_ls_2 values('LS0010111052600012',2131,2,7.6,15.2,'tjcx');
insert into td_ls_2 values('LS0010111052600012',2104,1,16.9,16.9,'tjcx');
insert into td_ls_2 values('LS0010111052700016',404,20,1,20,'tjcx');
insert into td_ls_2 values('LS0010111052700018',2383,2,8.3,16.6,'no');
insert into td_ls_2 values('LS0010111052800022',377,2,1.6,3.2,'tjcx');
insert into td_ls_2 values('LS0010111052800022',3310,3,1.4,4.2,'no');
insert into td_ls_2 values('LS0010111052800022',404,25,1,25,'tjcx');
insert into td_ls_2 values('LS0010111052800023',2131,2,7.6,15.2,'tjcx');
insert into td_ls_2 values('LS0010111052900026',3310,2,1.4,2.8,'no');
答案:
1、
select a.Id_hyk as 会员卡,a.dh as 单号,a.Ymd_rz as 日期,b.Id_sp as 商品ID,b.Je_hs as 金额
from td_ls_1 a inner join td_ls_2 b on a.dh = b.dh order by 会员卡
2、
select a.Ymd_rz as 日期,sum(b.Je_hs) as 销售金额 from td_ls_1 a
inner join td_ls_2 b on a.dh = b.dh
where a.Id_gsjg = 2
group by a.Ymd_rz
3、有两种方法:1、可以设置主外键关联,这样删除主表时就能同时删除子表记录(级联删除);2、先删子表记录再删主表记录
if OBJECT_ID('aa') is not null
drop table aa;
with a as(
select a.dh from td_ls_1 a inner join td_ls_2 b on a.dh = b.dh where a.Ymd_rz = ''
)
select * into aa from a;
--先删子表再删主表
delete from td_ls_2 where dh in (select dh from aa);
delete from td_ls_1 where dh in (select dh from aa);
4、
select a.Id_user as 收银员,sum(b.Je_hs) as 销售金额
from td_ls_1 a inner join td_ls_2 b on a.dh = b.dh
group by Id_user
order by 销售金额 desc
SQL 面试题(一)的更多相关文章
- 汽车之家一道SQL 面试题,大家闲来无事都来敲一敲
写在前面 上周去汽车之家面试,拿到这个SQL笔试题顿时感觉到有些陌生,因为好长时间不写SQL语句了,当时只写了表设计,示例数据和SQL语句都没写出来. 汽车之家应该用的SQL Server, 编程题一 ...
- sql面试题一 学生成绩
sql面试题一 学生成绩 原帖链接:http://topic.csdn.net/u/20081020/15/1ABF54D0-F401-42AB-A75E-DF90027CEBA0.html 表架 ...
- 一道sql面试题(查询语句)
一道sql面试题(查询语句) id name age 1 a 11 2 b 11 3 c 12 4 d 13 5 e ...
- SQL面试题1
SQL面试题 Sql常用语法 下列语句部分是Mssql语句,不可以在access中使用. SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言 ...
- 数据库基础SQL知识面试题二
数据库基础SQL知识面试题二 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.选课系统SQL语法练习 course数据库中有以下四张表: •students表(学生表): si ...
- 数据库基础SQL知识面试题一
数据库基础SQL知识面试题一 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如标题所示,本篇博客主要介绍基础知识的面试题.大家可以用来测试面试者的技术水平,由于个人水平所限,难免 ...
- SQLServer 常见SQL笔试题之语句操作题详解
SqlServer 常见SQL笔试题之语句操作题详解 by:授客 QQ:1033553122 测试数据库 CREATE DATABASE handWriting ON PRIMARY ( name = ...
- SQL面试题(网络收集)
1. 用一条SQL 语句 查询出每门课都大于80 分的学生姓名 name kecheng fenshu 张三 语文 81 张三 数学 75 李四 ...
- Sql面试题之四(难度:中等 | 含答案 | 有逻辑题)
Sql面试题之四(难度:中等 | 含答案 | 有逻辑题)
- Sql面试题之三(难度:简单| 含答案)
Sql面试题之三(难度:简单| 含答案) 答案: .SELECT B.name, B.Depart T.Content FROM B, T WHERE ( T.Content = '税法培训' and ...
随机推荐
- 帧与场 - djf_1985的专栏 - 博客频道 - CSDN.NET
帧与场 - djf_1985的专栏 - 博客频道 - CSDN.NET 电视信号是通过摄像机对自然景物的扫描并经光电转换形成的.扫描方式分为“逐行扫描”和“隔行扫描”.“逐行扫描”指每幅图像均是由电子 ...
- jquery 和 $
而jQuery就是jQuery库提供的一个函数.(好像也不仅仅只是函数, 因为还有 $.ajax(options) 这样的使用,等同 jQuery.ajax(options)) 这个函数的作用是根据 ...
- Linux下mongodb安装
1>设置mongoDB目录 cd /home/apps 附:centOS下创建目录命令 mkdir /home/apps 2>下载mongodb curl -O http:// ...
- iOS 应用有用户评论功能 因为潜在色情信息被退回解决方案
应用的每一次退回都是一次很好的学习机会 这次是说我的应用没有对色情的内容进行监管或屏蔽的管理机制 这里我主要是 评论页面 违法 如下 以下提供几种解决方案: 1.按照苹果给的建议 我们添加协议进去 ...
- IOS 设置定时器
IOS 设置定时器 自动滚动视图 定时发送坐标信息 即时显示 时钟 NSTimer *timer; - (void)start {//1second 调用一次 timer = [NSTimer sc ...
- iOS 自定义 shareSDK 容器
- (void)initializePlat { //添加新浪微博应用 [ShareSDK connectSinaWeiboWithAppKey:@"3201194191" app ...
- ArcGIS Engine断开其他ArcSDE用户连接的解决方案
来自:http://blog.csdn.net/linghe301/article/details/38925481 最近有很多用户咨询在ArcGIS Engine中希望能够实现断开其他客户端连接Ar ...
- 【阿里云产品公测】简单日志服务SLS使用评测 + 教程
[阿里云产品公测]简单日志服务SLS使用评测 + 教程 评测介绍 被测产品: 简单日志服务SLS 评测环境: 阿里云基础ECS x2(1核, 512M, 1M) 操作系统: CentOS 6.5 x6 ...
- In-Memory:Hash Index
SQL Server 2016支持哈希查找,用户可以在内存优化表(Memory-Optimized Table)上创建Hash Index,使用Hash 查找算法,实现数据的极速查找.在使用上,Has ...
- org-reveal
环境: Debian 8 Emacs 24.4 org-reveal是在emacs org-mode中使用reveal.js的一个插件. emacs 24.4自带的org版本是8.2.10,这个版本似 ...