SQL 简单练习
USE study;
SELECT * FROM EMP
--查询雇员姓名的最后三个字母
SELECT ename,right(ename,3) FROM EMP ;
--查询10部门雇员进入公司的星期数
SELECT ename,datename(month,hiredate) from EMP where deptno =10
--1 查询部门30中的所有员工
SELECT * FROM EMP WHERE deptno=30
--2 列出所有办事员(CLERK)的姓名,编号和部门编号
SELECT ename,empno,deptno FROM EMP where job='clerk'
--3 找出佣金高于薪金的员工
SELECT ename from EMP where sal >comm
--求出每个雇员的年薪
SELECT ename,sal*12 FROM EMP ;
--4 找出佣金高于薪金的60%的员工
SELECT ename ,sal,comm FROM EMP WHERE sal>comm*0.6
--5 找出部门10中所有经理(MANAGER)和部门20中所有办事员(CLERK)的详细资料
SELECT *FROM EMP WHERE (job ='MANAGER'AND deptno =10) OR (job ='MANAGER'AND deptno =20)
--6 找出部门10中所有经理(MANAGER),部门20中的所有办事员(CLEAK),
-- 既不是经理又不是办事员但薪金大于或等于2000的所有员工的详细资料
SELECT *FROM EMP WHERE (job ='MANAGER'AND deptno =10) OR (job ='CLEAK'AND deptno =20)OR(job<>'MANAGER'AND job<>'CLEAK'AND sal >=2000)
--7 找出收取佣金的员工的不同工作
SELECT DISTINCT job FROM EMP WHERE comm is not null
--8 找出不收取佣金或收取佣金低于100的员工
SELECT *FROM EMP where comm IS NULL OR comm<100
--9 找出各月倒数第3天受雇的所有员工
SELECT * FROM EMP WHERE month (dateadd (day,3,hiredate))=month(dateadd(month,1,hiredate))
--10 找出早于12年前受雇的员工
SELECT * FROM EMP WHERE datediff (year,hiredate ,getdate())>12
--11 以首字母大写的方式显示所有员工的姓名
SELECT upper(substring(ename,1,1))+lower(substring (ename,2,len(ename)))from emp
--12 显示正好为5个字符的员工的姓名
SELECT ename FROM EMP WHERE len(ename)=5 ;
--13 显示不带有"R"的员工的姓名
SELECT ename FROM EMP WHERE ename NOT LIKE 'R'
--14 显示所有员工的姓名的前三个字符
SELECT ename,right(ename,3) FROM EMP
--15 显示所有员工的姓名,用"a"代替所有的"A"
SELECT replace(ename,'A','a')from EMP
--16 显示满10年服务年限的员工的姓名和受雇日期
SELECT ename,hiredate FROM EMP WHERE datediff(year,hiredate,getdate())>10
--17 显示员工详细信息,按姓名排序
SELECT * FROM EMP ORDER BY ename
--18 显示员工的姓名和受雇日期,根据其服务年限,将最老的员工排在前面
SELECT ename,hiredate FROM EMP ORDER BY datediff(year ,hiredate ,getdate())DESC
--19 显示所有员工的姓名,工作和薪金,按工作的降序排序,若工作相同则薪金排序
SELECT ename,job,sal from EMP ORDER BY job DESC,sal
--20 显示所有员工的姓名,加入公司的年份和月份,按受雇日期所在月排序,若月份相同则将
--最早年份的员工排在前面
SELECT ename,year(hiredate)'年份',month(hiredate)'月份'FROM EMP ORDER BY 月份,年份
--21 显示在一个月为30天的情况,所有员工的日薪金,忽略余数
SELECT ename,floor(sal/30) FROM EMP
--22 找出在(任何年份的)2月受雇的所有员工
SELECT ename FROM EMP WHERE month(hiredate)=2
--23 对于每个员工,显示其加入公司的天数
SELECT ename,datediff (day,hiredate ,getdate()) FROM EMP
--24 显示姓名字段的任何位置包含"A"的所有员工的姓名
SELECT ename FROM EMP WHERE ename LIKE '%A%';
--25 以年月日的方式显示所有员工的服务年限(大概)
SELECT ename, floor(datediff(day,hiredate ,getdate())/365),floor(floor(datediff(day,hiredate ,getdate()))-floor(datediff(day,hiredate ,getdate())/365)*365)/12 from EMP
SQL 简单练习的更多相关文章
- MVC 学习(二)之Linq to Sql 简单Demo
Linq to Entities 已经我的一篇博文中阐述了,这里阐述一下简单的Linq to Sql 的增删改查.Linq to sql 与Linq to Entities虽然同属于DataBase- ...
- Linq to SQL 简单的增删改操作
Linq to SQL 简单的增删改操作. 新建数据库表tbGuestBook.结构如下: 新建web项目,完成相应的dbml文件.留言页面布局如下 <body> <form id= ...
- Mybatis动态SQL简单了解 Mybatis简介(四)
动态SQL概况 MyBatis 的强大特性之一便是它的动态 SQL 在Java开发中经常遇到条件判断,比如: if(x>0){ //执行一些逻辑........ } Mybatis应用中,S ...
- Oracle笔记 六、PL/SQL简单语句块、变量定义
1.简单SQL语句,HellWorld示例 --输出信息 begin dbms_output.put_line('Oracle Hello World!'); end; 2.变量的定义.使用 --定义 ...
- PL/SQL简单使用——导入、导出数据表
1.使用PL/SQL导出.导入表 在使用PL/SQL操作oracle数据库时,经常使用的一个操作就是将自己写的数据表导出,或者想把他人的数据表导入到自己的数据库中.虽然是很简单的操作,但自己之前一直出 ...
- Spark的Streaming和Spark的SQL简单入门学习
1.Spark Streaming是什么? a.Spark Streaming是什么? Spark Streaming类似于Apache Storm,用于流式数据的处理.根据其官方文档介绍,Spark ...
- SQL简单基础(1)
对于SQL不再做过多的介绍,毕竟作为一个初学者对于SQL(结构化查询语言)也好,关系型数据库也好理解都并不是很深,只知道一些基本的概念. 本系列旨在介绍一些简单开发中用得上的SQL语句以及其使用方法, ...
- SQL简单基础(2)
查询功能是SQL语句最重要的功能,查询操作也是数据库系统最常用的操作.学习SQL查询语句,首先要弄清楚的是查询语句用到的关键字以及查询语句的执行顺序.SQL语言的一个特点在于,它是一种声明式语句,执行 ...
- sql 简单语法
1.数据库操作 create database student_info -- 创建数据库 drop database student_info -- 删除数据库 2.表操作 -- 创建表 creat ...
- SQL简单嵌套查询与非嵌套查询的比较(MSSQL2005)
某天的工作是修复某个项目的bug,接着就发现,其sql极其混乱,有非常多的left join和in操作,还有嵌套查询(只有一个表的嵌套查询).不知道看到过哪里的资料说,嵌套查询速度慢,于是我把全部嵌套 ...
随机推荐
- 【线段树成段更新成段查询模板】【POJ3468】A Simple Problem with Integerst
题目大意: 2个操作 A.区间a b 增加 c B 查询a b; 注意事项:1.记住要清除标记 2.查询时要下放标记,但没必要向上更新 线段:自带的,不用建模 区间和性质:sum: /* WA 1次 ...
- 使用ionic与cordova(phonegap)进行轻量级app开发前的环境配置与打包安卓apk过程记录
前言 有人说:"如果你恨一个人,就让ta去接触cordova(phonegap)",这是因为这里面的水很深,坑很多,真让人不是一般地发狂.或许有幸运的人儿基本顺顺利利就配置完环境 ...
- UCML快速开发平台学习1-UCML环境安装
最近公司项目时间紧张,经过各位大神的PK,决定用多年前话10W采购过来,一直被雪藏的UCML来开发.为啥花了钱买回来不用我就不吐槽了. UCML安装 翻看安装手册,貌似不 ...
- new String[0]的作用
返回包含此 collection 中所有元素的数组:返回数组的运行时类型与指定数组的运行时类型相同.如果指定的数组能容纳 该 collection,则返回包含此 collection 元素的数组.否则 ...
- 最近做OpenWrt的总结
用到了哪些东西 需要在OpenWrt上开发一个客户端,用C语言写还比较方便,最开始在linux上跑,后面移植到路由器上,做成ipk.除了稍微修改了下Makefile,其他的什么都没改. 因为需要做个配 ...
- MVC+JSON 无限滚动翻页
public partial class News { public int ID{ get; set; } public int Title{ get; set; } } ) { Response. ...
- Android 天天爱消除辅助
简介 <天天爱消除>是一款移植于手游的消除类益智游戏,该游戏只有通过手机登录QQ跟微信才能进行,这样一来这款游戏必然会大红大紫. 功能 开发Android自动化触屏事件,录制操作脚本,实现 ...
- saiku中默认级别all的国际化
在制作saiku的schema文件的时候,当你选择层次的属性hasAll为true的时候,系统默认会为你的层次添加一个“(all)”级别,你无法给它增加一个caption属性来国际化它,因为他不是你创 ...
- hive集群安装配置
hive 是JAVA写的的一个数据仓库,依赖hadoop.没有安装hadoop的,请参考http://blog.csdn.net/lovemelovemycode/article/details/91 ...
- codechef Chef and The Right Triangles 题解
Chef and The Right Triangles The Chef is given a list of N triangles. Each triangle is identfied by ...