微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

三、Oracle 查询+where条件

一。查询
1.distinct:查询去除重复的行,是所有的列都重复才满足条件
2.列别名:as或者空格 select name as 姓名 from student
3.查询字段可以做数学运算,也可以做字符串连接,字符连接符号是:||
4.数字和null相加得到是null
5.nvl用来处理null值。nvl(字段名,值):将null值转换为值
例子:select nvl(stu_sex,‘无‘) from student
6.排序:order by 字段名... asc(升)|desc(降)
例子:select * from student order by stu_age,stu_birthday asc
7.日期转换:用函数解决,档查询条件中用到了日期,可以用转换函数转换
select to_date(‘2017-1-1 23:23:23‘,‘yyyy-MM-dd hh24:mi:ss‘) from dual

二。where条件
1.数字比较:> < >= <= != <> ^=
2.between ..and.. 值在两者之间
例子:select * from deal_info where deal_count between 50 and 100
3.in:in(1,2,3,4) 值在列表中
例子:select * from deal_info where deal_id in (1,5,7,9)
4.like:字符串的模糊匹配 stu_name like ‘%张%‘ 表示名字中含有张字
例子:select * from USER_INFO where username like ‘%四%‘
5.is null:值为null
select * from deal_info where deal_time is not null

三。练习

要求:
1.创建表并创建主外键关系,用sql语句
2.给班级表添加两条数据
3.给每个班添加4个学员
4.给部分学员添加10条成绩信息

查询
1.查询java成绩不及格的信息
2.查询姓张的学员信息
3.查询没有重复的所有成绩信息
4.查询考试时间是2017-1-1 13:1:1以后的成绩信息
5.查询没有考试成绩的成绩信息
6.查询年龄为18,20,22岁的学员信息
7.查询所有成绩信息按成绩倒序排序
科目表添加3条科目信息

四。作业

1.创建三张表:
班级信息表:主键,班级名
学员信息表:主键,姓名,性别,年龄,班级外键
成绩信息表:主键,科目名,成绩,考试时间,学员外键
关系:班级和学员 1对多 学员和成绩是1对多

要求:
1.创建表并创建主外键关系,用sql语句
2.给班级表添加两条数据
3.给每个班添加4个学员
4.给部分学员添加10条成绩信息

查询
1.查询java成绩不及格的信息
2.查询姓张的学员信息
3.查询没有重复的所有成绩信息
4.查询考试时间是2017-1-1 13:1:1以后的成绩信息
5.查询没有考试成绩的成绩信息
6.查询年龄为18,22岁的学员信息
7.查询所有成绩信息按成绩倒序排序


多表查询
内连接查询结果:
班级名 学员名 科目名 成绩

链接查询
1.假设有学员考试没有写名字,也就是说成绩表中有成绩,但是成绩表中学员外键没有数据
查询所有成绩,并把没有名字的成绩也显示出来。

2.假设学员没有参加考试,找不到相应的成绩信息。查询所有学员信息,没有成绩的以null显示

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐