Java面试题总结之数据库与SQL语句
1、有3 个表,表结构如下:
Student 学生表(学号,姓名,性别,年龄,组织部门)
Course 课程表(编号,课程名称)
Sc 选课表(学号,课程编号,成绩)。
1)写一个SQL 语句,查询选修了’计算机原理’的学生学号和姓名。
select student.sno, student.sname from student left join sc on student.sno=sc.sno left join course on sc.cno=course.cno where course.cname='计算机原理';
2)写一个SQL 语句,查询’王小明’同学选修了的课程名字。
select cname from Course where cno in ( select cno from sc where sno = (select sno from Student where sname='王小明'));
3)写一个SQL 语句,查询选修了5 门课程的学生学号和姓名
select stu.sno, stu.sname from student stu where (select count(*) from sc where sno=stu.sno) = 5;
2、有三张表,学生表S,课程C,学生课程表SC,学生可以选修多门课程,一门课程可以被多个学生选修,通过SC 表关联。
1)写出建表语句;
select stu.sno, stu.sname from student stu where (select count(*) from sc where sno=stu.sno) = 5;
2)写出SQL 语句,查询选修了所有选修课程的学生;
select stu.id, stu.name from s stu where (select count(*) from sc where sid=stu.id) = (select count(*) from c);
3)写出SQL 语句,查询选修了至少5 门以上的课程的学生。
select stu.id, stu.name from s stu where (select count(*) from sc where sid=stu.id)>=5;
3、数据库表(Test)结构如下:
|
ID |
NAME |
AGE |
MANAGER(所属主管人ID) |
|
106 |
A |
30 |
104 |
|
109 |
B |
19 |
104 |
|
104 |
C |
20 |
111 |
|
107 |
D |
35 |
109 |
|
112 |
E |
25 |
120 |
|
119 |
F |
45 |
null |
要求:列出所有年龄比所属主管年龄大的人的ID 和名字?
答:SQL 语句如下:
select employee.name from test employee where employee.age > (select manager.age from test manager where manager.id=employee.manager);
4、有如下两张表:
表city:表state:
|
CityNo |
CityName |
StateNo |
|
BJ |
北京 |
Null |
|
SH |
上海 |
Null |
|
GZ |
广州 |
GD |
|
DL |
大连 |
LN |
欲得到如下结果:
CityNo City Name State No State Name
BJ 北京 (Null)(Null)
DL 大连 LN 辽宁
GZ 广州 GD 广东
SH 上海 (Null) (Null)
写出相应的SQL 语句。
答:SQL 语句为:
SELECT C.CITYNO, C.CITYNAME, C.STATENO, S.STATENAME FROM CITY C, STATE S WHERE C.STATENO=S.STATENO ORDER BY(C.CITYNO);

Java面试题总结之数据库与SQL语句的更多相关文章
- 在线数据库表(sql语句)生成java实体类工具
相信每个做java开发的读者,都接触过SQL建表语句,尤其是在项目开发初期,因为数据库是项目的基石. 在现代项目开发中,出现了许多ORM框架,通过简单的实体映射,即可实现与数据库的交互,然而我们最初设 ...
- mysql(数据库,sql语句,普通查询)
第1章 数据库 1.1 数据库概述 l 什么是数据库 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作. l 什 ...
- SQL Server 【附】创建"商品管理数据库"、"学生选课数据库"的SQL语句
附:(创建“商品管理数据库”的SQL语句) --建立"商品管理数据库"数据库-- create database 商品管理数据库 on(name='商品管理数据库_m', file ...
- 《大话数据库》-SQL语句执行时,底层究竟做了什么小动作?
<大话数据库>-SQL语句执行时,底层究竟做了什么小动作? 前言 大家好,我是Taoye,试图用玩世不恭过的态度对待生活的Coder. 现如今我们已然进入了大数据时代,无论是业内还是业外的 ...
- 总结一些关于操作数据库是sql语句还是存储过程问题
总结一些关于操作数据库是sql语句还是存储过程问题 程序中,你跟数据的交互,需要向数据库拿数据.更改数据库的数据等,这些操作,本身不是程序完成的,而是程序发命令给数据库去做的,不管是通过sql语句方式 ...
- GP数据库 常用SQL语句
GP数据库 常用SQL语句 --1,查看列名以及类型 select upper(column_name) ,data_type from information_schema.columns wher ...
- Oracle数据库 基础SQL语句练习
一.说明 第一次使用Oracle,想做一些练习,熟悉一些oracle. 表:使用的是scott用户,默认的表 具体表讲解,可以参考该文档:https://www.cnblogs.com/xjcheng ...
- Oracle,SQL Server 数据库较MySql数据库,Sql语句差异
原文:Oracle,SQL Server 数据库较MySql数据库,Sql语句差异 Oracle,SQL Server 数据库较MySql数据库,Sql语句差异 1.关系型数据库 百度百科 关系数据库 ...
- [数据库]简单SQL语句总结
1.在查询结果中显示列名:a.用as关键字:select name as '姓名' from students order by ageb.直接表示:select name '姓名' from ...
随机推荐
- (转)Spring简介
http://blog.csdn.net/yerenyuan_pku/article/details/52830571 阿昀以一个初学者的身份学习Spring框架,并按照一个小白的思路详细总结学习过程 ...
- k近邻法(kNN)
<统计学习方法>(第二版)第3章 3 分类问题中的k近邻法 k近邻法不具有显式的学习过程. 3.1 算法(k近邻法) 根据给定的距离度量,在训练集\(T\)中找出与\(x\)最邻近的\(k ...
- Object.assign(o1, o2, o3) 对象 复制 合拼
Object 对象方法学习之(1)—— 使用 Object.assign 复制对象.合并对象 合并对象 var o1 = {a: 1}; var o2 = {b: 2}; var o3 = {c: 3 ...
- 插入insert几种用法
1.insert ignore into 当插入数据时,如出现错误时,如重复数据,将不返回错误,只以警告形式返回.所以使用ignore请确保语句本身没有问题,否则也会被忽略掉.例如: INSERT I ...
- C ++ _基础之共用体
由以下代码来进一步学习共用体 #include <stdio.h> #include<iostream> void main() { union un { int a; cha ...
- python之bool (布尔值)
用途: 判断真假 识记: 空的字符串是False,非空的就是True 0 是False,非0的都是True 格式: True False 布尔值转换成字符串: print(type(str(Tru ...
- 小程序01 微信小程序介绍和开发准备
前言 火爆的微信小程序:跳一跳.摩拜单车.美柚.大众点评.滴滴出行 背景 为什么会有小程序? 微信最早推出公众号和服务号,公众号和服务号所传播的网页经常出现加载缓慢甚至页面空白的情况. 微信小程序的诞 ...
- 《3+1团队》【Alpha】Scrum meeting 1
项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 3+1团队 团队博客地址 https://home.cnblogs.com/u/3-1group ...
- WCF未找到终结点
配置都配了,仍然找不到,config文件没有重新加载,原因不详,只能重新编译一下,就好了....后续找找原因看看
- Go:类型断言
一.基本介绍 类型断言:由于接口是一般类型,不知道具体类型,如果要转成具体类型,就需要使用类型断言. 如果希望将一个空接口类型重新转换成对应的类型,那么需要使用类型断言,能转换成功是因为这个空接口原先 ...