SQL的基本语法练习

select EMPNO,SAL from emp where SAL BETWEEN 1000 and 2000--从enp中获取sal中1000到2000之间的数据
select ENAME,SAL from emp where SAL >= 1000 and SAL <=2000--从enp中获取sal中1000到2000之间的数据
select ENAME,SAL from emp where SAl IN(1000,2300);

select EMPNO from emp ORDER BY EMPNO;--默认排序
select EMPNO from emp ORDER BY EMPNO ASC--升序
select EMPNO from emp ORDER BY EMPNO DESC--降序

select LOWER( ENAME) from emp --大小写的转换

select * from emp;

select * from emp;
select trim(ename) from emp--去掉首尾的空格

select * from emp;
select * from emp where ENAME = ‘KING‘--从中查找某个指定的

select * from emp;
select sal,sal+300 from emp--使用数学运算符“+”
select sal,sal*10 from emp--使用数学运算符“*”
select sal,10*sal+300 from emp--运算符的优先级
select sal,10*(sal+300)from emp--带括好的运算

select * from emp;
select sal+20 AS sal_o from emp

select * from emp;
select ENAME || JOB from emp--连接符的运算
------数值函数-----

round--四舍五入
select round(412,-1) from dual--410
select round(412.777,2) from dual--412.78

trunc--截断
select trunc(412.13,-1) from dual--410

MOD --求余
select MOd(200,11) from emp
select Mod(135.23,15) from dual

--日期函数
Months_between()---两个日期相差的月数
select months_between(sysdate,hiredate) from emp
Last_day---本月的最后一天
select last_day(sysdate) from dual
Next_day()--指定日期的下个日期
select next_day(sysdate,‘星期一‘) from dual
-------------------------------------------------
select * from emp order by sal  DESC
select sal
from emp
order by sal DESC

--------------------------------------------------
Add_months()--向指定日期加上若干月数
select Add_months(sysdate,0) from dual;

-----转换函数----
to_char--对数字的转换
select to_char(sysdate,‘yyyy‘) from dual;
select to_char(sysdate,‘fmyyyy-mm-dd‘) from dual;
select to_char(sal,‘L999,999,999‘) from emp;
select to_char(sysdate,‘D‘) from dual--返回星期

To_number--讲字符转换成数字
select to_number(‘13‘)+to_number(‘14‘) from dual---27

To_date
Select to_date(‘20090210‘,‘yyyyMMdd‘)from dual

------通用函数--
NVL()函数
select nvl(comm,1) from emp

-----------------------------------------------------------------
--模糊查询like
select * from emp
select * from emp
where job like ‘%*_%‘
-----逻辑运算符
--选择在部门30中员工的所有信息
select * from emp
where deptno=30;
--列出职位为(MANAGER)的员工的编号,姓名
select EMPNO,ENAME from emp
where job=‘MANAGER‘
--找出奖金高于工资的员工
select *from emp
where comm>sal
--找出每个员工奖金和工资的总和
select comm+sal,ename from emp
--找出部门10中的经理(MANAGER)和部门20中的普通员工(CLERK)
select * from emp
where (deptno=10 and job=‘MANAGER‘)or(deptno=20 and job=‘CLERK‘)
--找出部门10中既不是经理也不是普通员工,而且工资大于等于2000的员工
select *from emp
where deptno=10 and job not in(‘MANAGER‘,‘CLERK‘) and sal>=2000;
--找出有奖金的员工的不同工作
select distinct job from emp--distinct不同
where comm is not null and comm>0;
--找出没有奖金或奖金低于500的员工
select *from emp
where comm <500 or comm is null;
--显示雇员信息姓名,根据其服务年限,将最老的雇员排在最前面
select ename from emp
order by hiredate;
时间: 2025-01-18 11:31:42

SQL的基本语法练习的相关文章

Atitit.sql&#160;ast&#160;表达式&#160;语法树&#160;语法&#160;解析原理与实现&#160;java&#160;php&#160;c#.net&#160;js&#160;python

Atitit.sql ast 表达式 语法树 语法 解析原理与实现 java php c#.net js python 1.1. Sql语法树 ast 如下图锁死1 2. SQL语句解析的思路和过程3 2.1. lexer作为一个工具,完成了对SQL字符串的切割,将语句转化成一个tokens数组.3 2.2. Parser完成了SQL解析的后序部分:使用一个lexer对象作为工具,切出tokens,然后解析语义,绑定相关的系统接口.3 2.3. 关系数据和XML数据库下其抽象语法树分别为: 如图

SQL:1999基本语法(学习笔记)

SQL:1999基本语法 SELECT [DISTINCT] * | 列名称 [AS]别名,........ FROM 表名称1 [别名1][CROSS JOIN表名称2 别名2]| [NATURAL JOIN表名称2 别名2] [ JOIN表名称2 别名2 USING (关联列名称)] [ JOIN表名称2 别名2 on (关联条件)] [LEFT | RIGHT | FULL OUTER JOIN 表2 ON (关联条件)] [WHERE 条件(s)] [ORDER BY 排序的字段 1,A

SQL中部分语法整理

1.SELECT DISTINCT 语句 关键词DISTINCT用于返回唯一不同的值. 语法: SELECT DISTINCT 列名称 FROM 表名称 2.SELECT INTO语句 SELECT INTO语句从一个表中选取数据,然后把数据插入另一个表中. SELECT INTO语句常用于创建表的备份复件或者用于对记录进行存档. SQL SELECT INTO语法 把所有的列插入新表: SELECT *     INTO new_table_name [IN externaldatabase]

PL/SQL程序设计基础语法详解(一)

一.什么是PL/SQL(Procedure Language/SQL) 概念:PLSQL是Oracle对sql语言的过程化扩展 指在SQL命令语言中增加了过程处理语句(如分支.循环等),使SQL语言具有过程处理能力. PL/SQL的结构: declare 说明部分 (变量说明,光标申明,例外说明 ] begin 语句序列 (DML语句]- exception 例外处理语句 End; 简单的PL/SQL程序 如果是在命令行中需要使用 set serveroutput on先打开显示 declare

SQL[连载2]语法及相关实例

SQL语法 数据库表 一个数据库通常包含一个或多个表.每个表由一个名字标识(例如:"Websites"),表包含带有数据的记录(行). 在本教程中,我们在 MySQL 的 RUNOOB 数据库中中创建了 Websites 表,由于存储网站记录. 我们可以通过以下命令查看 "Websites" 表的数据: mysql> use RUNOOB; Database changed mysql> set names utf8; Query OK, 0 rows

SQL VIEW 使用语法

之前一直都不知道VIEW有什么作用,写程序的时候也很少遇到过,复习SQL语句的时候碰到了,就记录下来吧. 什么是视图? 在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表. 视图包含行和列,就像一个真实的表.视图中的字段就是来自一个或多个数据库中的真实的表中的字段.我们可以向视图添加 SQL 函数.WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表. 注释:数据库的设计和结构不会受到视图中的函数.where 或 join 语句的影响. SQL CREATE

SQL DML 基础语法

1.INSERT INTO 语句 INSERT INTO 语句用于向表格中插入新的行. 语法 INSERT INTO 表名称 VALUES (值1, 值2,....) 我们也可以指定所要插入数据的列: INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....) 2.Update 语句 Update 语句用于修改表中的数据. 语法: UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 3.DELETE 语句 DELET

动态sql语句基本语法--Exec与Exec sp_executesql 的区别

http://www.cnblogs.com/goody9807/archive/2010/10/19/1855697.html 动态sql语句基本语法 1   :普通SQL语句可以用Exec执行   eg:       Select   *   from   tableName Exec( 'select   *   from   tableName ') Exec   sp_executesql   N 'select   *   from   tableName '         --

SQL的高级语法

TOP 子句 TOP 子句用于规定要返回的记录的数目. 对于拥有数千条记录的大型表来说,TOP 子句是非常有用的. SQL Server 的语法: SELECT TOP number|percent column_name(s) FROM table_name SELECT TOP 1000 [id] ,[code] ,[colltime] ,[quality] ,[curvalue] FROM [web_v20].[dbo].[dat_col_data] 我们希望从 "Persons"

动态sql语句基本语法

动态sql语句基本语法 1 :普通SQL语句可以用Exec执行 eg: Select * from tableName Exec('select * from tableName') Exec sp_executesql N'select * from tableName' -- 请注意字符串前一定要加N 2:字段名,表名,数据库名之类作为变量时,必须用动态SQL eg: declare @fname varchar(20) set @fname = 'FiledName' Select @fn