删除数据库的sql语句如何写

删除数据库的sql语句如何写,第1张

1、drop database:数据库名--删除数据库的。

2、drop table:表名--删除表的。

3、delete from:表名--where条件--删除数据的。

4、truncate table:表名--也是删除数据库的。

1、SQL即结构化查询语言(Structured Query Language),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

2、SQL语句无论是种类还是数量都是繁多的,很多语句也是经常要用到的,SQL查询语句就是一个典型的例子,无论是高级查询还是低级查询,SQL查询语句的需求是最频繁的。

以某整数字段为种子(没有的话要生成一个),通过RAND函数生成一个0-1之间的随机数。如07136106261841817,然后转换成文本型,再取后7位即RIGHT(CONVERT(VARCHAR,RAND(序号)),7) 。

结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,sql 语句就是对数据库进行 *** 作的一种语言。

SQL语句无论是种类还是数量都是繁多的,很多语句也是经常要用到的,SQL查询语句就是一个典型的例子,无论是高级查询还是低级查询,SQL查询语句的需求是最频繁的。

DBMS(DataBaseManagementSystem,数据库管理系统)和数据库。平时谈到“数据库”可能有两种含义:MSSQLServer、Oracle等某种DBMS;存放一堆数据表的一个分类(Catalog)。

联合查询效率较高以下例子来说明联合查询的好处

t1表结构(用户名,密码)useridintusernamevarchar(20)passwordvarchar(20)

1jackjackpwd

2owenowenpwd

t3表结构(用户积分,等级)useridintjfintdjint

1203

3506

第一:内联(innerjoin)

如果想把用户信息,积分,等级都列出来那么一般会这样写

selectfromt1,t3wheret1userid=t3userid其实这样的结果等同于selectfromt1innerjoint3ont1userid=t3userid

就是把两个表中都存在userid的行拼成一行这是内联但后者的效率会比前者高很多建议用后者的写法

运行结果:useridusernamepassworduseridjfdj

1jackjacjpwd1203

第二:左联(leftouterjoin)显示左表中的所有行

selectfromt1leftouterjoint3ont1userid=t3userid

运行结果:useridusernamepassworduseridjfdj

1jackjackpwd1203

2owenowenpwdNULLNULLNULL

第三:右联(rightouterjoin)显示右表中的所有行

selectfromt1rightouterjoint3ont1userid=t3userid

运行结果:useridusernamepassworduseridjfdj

1jackjackpwd1203

NullNullNull3506

第四:全联(fullouterjoin)显示两边表中所有行

selectfromt1fullouterjoint3ont1userid=t3userid

运行结果:useridusernamepassworduseridjfdj

1jackjackpwd1203

2owenowenpwdNULLNULLNULL

NullNullNull3506

一共给你两分答案,第一份是本人写的

第二份是上课的老师写的,你可以对比一下:

--1选择部门30中的雇员

select from emp where deptno=30;

--2列出所有办事员的姓名,编号和部门

select ename,empno,deptno from emp where job='CLERK';

--3找出佣金高于薪金的雇员

select from emp where comm>sal;

--4找出佣金高于薪金的60%的雇员

select from emp where comm>sal06;

--5找出部门10中所有经理和部门20中所有办事员的详细资料

select from emp where (deptno=10 and job='MANAGER')or (deptno=20 and job='CLERK');

select from emp where deptno=10 and job='MANAGER'

union

select from emp where deptno=20 and job='CLERK';

--6找出部门10中所有经理部门20中所有办事员以及既不是

---经理又不是办事员但其薪金大于或等于2000的所有雇员的详细资料

select from emp where deptno=10 and job='MANAGER'

union

select from emp where deptno=20 and job='CLERK'

union

select from emp where 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找出各月最后一天受雇的所有雇员

select from emp where hiredate=last_day(hiredate);

--10找出早于12年前受雇的雇员

select from emp where months_between(sysdate,hiredate)>144;

--11显示只有首字母大写的所有雇员的姓名

select initcap(ename) from emp;

select from emp where ename=initcap(ename);

--12显示正好为5个字符的雇员姓名

select ename from emp where length(ename)=5;

--13显示不带有"R"的雇员姓名

select ename from emp where ename not like('%R%');

--14显示所有雇员的姓名的前三个字符

select substr(ename,1,3) from emp;

--15显示所有雇员的姓名,用a替换所有"A"

select replace(ename,'A','a') from emp;

--16显示所有雇员的姓名以及满10年服务年限的日期

select ename,add_months(hiredate,120) from emp;

--17显示雇员的详细资料,按姓名排序

select from emp order by ename;

--18显示雇员姓名,根据其服务年限,将最老的雇员排在最前面

select ename,hiredate from emp order by hiredate;

--19显示所有雇员的姓名工作的薪金,按工作内的工作的降序顺序排序,而工作按薪金排序

select ename,job,sal from emp order by job desc,sal;

--20显示所有雇员的姓名的加入公司的年份和月份,按雇员受雇日所在月排序,

--并将最早年份的项目排在最前面

select ename,to_char(hiredate,'yyyy-mon') from emp order by to_char(hiredate,'mon'),to_char(hiredate,'yyyy');

--21显示在一个月为30天的情况所有雇员的日薪金,忽略余数

select ename,trunc(sal/30) from emp;

--22找出在(任何年份的)2月受聘的所有雇员。

select from emp where to_char(hiredate,'mm')='02';

--23对于每个雇员,显示其加入公司的天数

select ename,floor(sysdate-hiredate)as 天数 from emp;

--24显示姓名字段的任何位置包含"A"的所有雇员的姓名

select from emp where ename like '%A%';

--25以年月和日显示所有雇员的服务年限

select ename,to_char(hiredate,'yyyymmdd') from emp;

___________________________________________________

使用scott/tiger用户下的emp表完成下列练习,表的结构说明如下

emp员工表(empno员工号/ename员工姓名/job工作/mgr上级编号/hiredate受雇日期/sal薪金/comm佣金/deptno部门编号)

------1选择部门30中的所有员工

select from emp where deptno=30;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7499 ALLEN SALESMAN 7698 20-2月 -81 1600 300 30

7521 WARD SALESMAN 7698 22-2月 -81 1250 500 30

7654 MARTIN SALESMAN 7698 28-9月 -81 1250 1400 30

7698 BLAKE MANAGER 7839 01-5月 -81 2850 30

7844 TURNER SALESMAN 7698 08-9月 -81 1500 0 30

7900 JAMES CLERK 7698 03-12月-81 950 30

------2列出所有办事员(CLERK)的姓名,编号和部门编号

select empno,ename,deptno from emp where job='CLERK';

EMPNO ENAME DEPTNO

---------- ---------- ----------

7369 SMITH 20

7876 ADAMS 20

7900 JAMES 30

7934 MILLER 10

------3找出佣金高于薪金的员工

select from emp where nvl(comm,0)>sal;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7654 MARTIN SALESMAN 7698 28-9月 -81 1250 1400 30

------4找出佣金高于薪金的60%的员工

select from emp where nvl(comm,0)>(sal06);

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7654 MARTIN SALESMAN 7698 28-9月 -81 1250 1400 30

------5找出部门10中所有经理(MANAGER)和部门20中所有办事员(CLERK)的详细资料

select from emp where (deptno=10 and job='MANAGER') or (deptno=20 and job='CLERK');

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7369 SMITH CLERK 7902 17-12月-80 800 20

7782 CLARK MANAGER 7839 09-6月 -81 2450 10

7876 ADAMS CLERK 7788 23-5月 -87 1100 20

------6找出部门10中所有经理(MANAGER),部门20中所有办事员(CLERK),既不是经理又不是办事员但其薪金大于或等于2000的所有员工的详细资料

select from emp

where (deptno=10 and job='MANAGER')

or (deptno=20 and job='CLERK')

or (job not in ('MANAGER','CLERK') and sal>=2000);

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7369 SMITH CLERK 7902 17-12月-80 800 20

7782 CLARK MANAGER 7839 09-6月 -81 2450 10

7788 SCOTT ANALYST 7566 19-4月 -87 3000 20

7839 KING PRESIDENT 17-11月-81 5000 10

7876 ADAMS CLERK 7788 23-5月 -87 1100 20

7902 FORD ANALYST 7566 03-12月-81 3000 20

------7找出收取佣金的员工的不同工作

select distinct job from emp where nvl(comm,0)>0;

JOB

---------

SALESMAN

------8找出不收取佣金或收取的佣金低于100的员工

select from emp where nvl(comm,0)<100;

select from emp where comm is null or comm < 100;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7369 SMITH CLERK 7902 17-12月-80 800 20

7566 JONES MANAGER 7839 02-4月 -81 2975 20

7698 BLAKE MANAGER 7839 01-5月 -81 2850 30

7782 CLARK MANAGER 7839 09-6月 -81 2450 10

7788 SCOTT ANALYST 7566 19-4月 -87 3000 20

7839 KING PRESIDENT 17-11月-81 5000 10

7844 TURNER SALESMAN 7698 08-9月 -81 1500 0 30

7876 ADAMS CLERK 7788 23-5月 -87 1100 20

7900 JAMES CLERK 7698 03-12月-81 950 30

7902 FORD ANALYST 7566 03-12月-81 3000 20

7934 MILLER CLERK 7782 23-1月 -82 1300 10

这个不对 :select from emp where comm < 100;

------9找出各月倒数第3天受雇的所有员工

select from emp where hiredate = last_day(hiredate) - 2;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7654 MARTIN SALESMAN 7698 28-9月 -81 1250 1400 30

------10找出早于12年前受雇的员工

select from emp where hiredate < add_months(sysdate,-1212);

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7369 SMITH CLERK 7902 17-12月-80 800 20

7499 ALLEN SALESMAN 7698 20-2月 -81 1600 300 30

7521 WARD SALESMAN 7698 22-2月 -81 1250 500 30

7566 JONES MANAGER 7839 02-4月 -81 2975 20

7654 MARTIN SALESMAN 7698 28-9月 -81 1250 1400 30

7698 BLAKE MANAGER 7839 01-5月 -81 2850 30

7782 CLARK MANAGER 7839 09-6月 -81 2450 10

7839 KING PRESIDENT 17-11月-81 5000 10

7844 TURNER SALESMAN 7698 08-9月 -81 1500 0 30

7900 JAMES CLERK 7698 03-12月-81 950 30

7902 FORD ANALYST 7566 03-12月-81 3000 20

7934 MILLER CLERK 7782 23-1月 -82 1300 10

------11以首字母大写的方式显示所有员工的姓名

select initcap(ename) as 姓名 from emp ;

姓名

----------

Smith

Allen

Ward

Jones

Martin

Blake

Clark

Scott

King

Turner

Adams

James

Ford

Miller

------12显示正好为5个字符的员工的姓名

select ename from emp where length(ename)=5;

select ename from emp where ename like '_____';

ENAME

----------

SMITH

ALLEN

JONES

BLAKE

CLARK

SCOTT

ADAMS

JAMES

------13显示不带有"R"的员工的姓名

select ename from emp where ename not like '%R%';

ENAME

----------

SMITH

ALLEN

JONES

BLAKE

SCOTT

KING

ADAMS

JAMES

------14显示所有员工姓名的前三个字符

select substr(ename,1,3) as ename from emp;

ENAME

------

SMI

ALL

WAR

JON

MAR

BLA

CLA

SCO

KIN

TUR

ADA

JAM

FOR

MIL

------15显示所有员工的姓名,用a替换所有"A"

select replace(ename,'A','a') as 替换后 from emp;

select translate(ename,'A','a') as 替换后 from emp;

替换后

---------

SMITH

aLLEN

WaRD

JONES

MaRTIN

BLaKE

CLaRK

SCOTT

KING

TURNER

aDaMS

JaMES

FORD

MILLER

------16显示满10年服务年限的员工的姓名和受雇日期

select ename,hiredate from emp where months_between(sysdate,hiredate)>120;

select ename,hiredate from emp where sysdate>add_months(hiredate,120);

ENAME HIREDATE

---------- ----------

SMITH 17-12月-80

ALLEN 20-2月 -81

WARD 22-2月 -81

JONES 02-4月 -81

MARTIN 28-9月 -81

BLAKE 01-5月 -81

CLARK 09-6月 -81

SCOTT 19-4月 -87

KING 17-11月-81

TURNER 08-9月 -81

ADAMS 23-5月 -87

JAMES 03-12月-81

FORD 03-12月-81

MILLER 23-1月 -82

不对:select ename,hiredate from emp where months_between(hiredate,sysdate)>120;

------17显示员工的详细资料,按姓名排序

select from emp order by ename;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7876 ADAMS CLERK 7788 23-5月 -87 1100 20

7499 ALLEN SALESMAN 7698 20-2月 -81 1600 300 30

7698 BLAKE MANAGER 7839 01-5月 -81 2850 30

7782 CLARK MANAGER 7839 09-6月 -81 2450 10

7902 FORD ANALYST 7566 03-12月-81 3000 20

7900 JAMES CLERK 7698 03-12月-81 950 30

7566 JONES MANAGER 7839 02-4月 -81 2975 20

7839 KING PRESIDENT 17-11月-81 5000 10

7654 MARTIN SALESMAN 7698 28-9月 -81 1250 1400 30

7934 MILLER CLERK 7782 23-1月 -82 1300 10

7788 SCOTT ANALYST 7566 19-4月 -87 3000 20

7369 SMITH CLERK 7902 17-12月-80 800 20

7844 TURNER SALESMAN 7698 08-9月 -81 1500 0 30

7521 WARD SALESMAN 7698 22-2月 -81 1250 500 30

------18显示员工的姓名和受雇日期,根据其服务年限,将最老的员工排在最前面

select ename,hiredate from emp order by hiredate;

ENAME HIREDATE

---------- ----------

SMITH 17-12月-80

ALLEN 20-2月 -81

WARD 22-2月 -81

JONES 02-4月 -81

BLAKE 01-5月 -81

CLARK 09-6月 -81

TURNER 08-9月 -81

MARTIN 28-9月 -81

KING 17-11月-81

JAMES 03-12月-81

FORD 03-12月-81

MILLER 23-1月 -82

SCOTT 19-4月 -87

ADAMS 23-5月 -87

------19显示所有员工的姓名、工作和薪金,按工作的降序排序,若工作相同则按薪金排序

select ename,job,sal from emp order by job desc,sal;

ENAME JOB SAL

---------- --------- ----------

WARD SALESMAN 1250

MARTIN SALESMAN 1250

TURNER SALESMAN 1500

ALLEN SALESMAN 1600

KING PRESIDENT 5000

CLARK MANAGER 2450

BLAKE MANAGER 2850

JONES MANAGER 2975

SMITH CLERK 800

JAMES CLERK 950

ADAMS CLERK 1100

MILLER CLERK 1300

SCOTT ANALYST 3000

FORD ANALYST 3000

------20显示所有员工的姓名、加入公司的年份和月份,按受雇日期所在月排序,若月份相同则将最早年份的员工排在最前面

select ename,to_char(Hiredate,'yyyy"年"mm"月"') as 年月,hiredate from emp

order by to_char(Hiredate,'mm'),to_char(Hiredate,'yyyy');

ENAME 年月 HIREDATE

---------- ---------- ----------

MILLER 1982年01月 23-1月 -82

ALLEN 1981年02月 20-2月 -81

WARD 1981年02月 22-2月 -81

JONES 1981年04月 02-4月 -81

SCOTT 1987年04月 19-4月 -87

BLAKE 1981年05月 01-5月 -81

ADAMS 1987年05月 23-5月 -87

CLARK 1981年06月 09-6月 -81

MARTIN 1981年09月 28-9月 -81

TURNER 1981年09月 08-9月 -81

KING 1981年11月 17-11月-81

SMITH 1980年12月 17-12月-80

JAMES 1981年12月 03-12月-81

FORD 1981年12月 03-12月-81

select ename,to_char(Hiredate,'yyyy/mm') as 年月,hiredate from emp

order by to_char(Hiredate,'mm'),to_char(Hiredate,'yyyy');

------21显示在一个月为30天的情况所有员工的日薪金,忽略余数

select ename,trunc(sal/30) daysal from emp;

ENAME DAYSAL

---------- ----------

SMITH 26

ALLEN 53

WARD 41

JONES 99

MARTIN 41

BLAKE 95

CLARK 81

SCOTT 100

KING 166

TURNER 50

ADAMS 36

JAMES 31

FORD 100

MILLER 43

------22找出在(任何年份的)2月受聘的所有员工。

select from emp where to_char(hiredate,'mm')='02';

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7499 ALLEN SALESMAN 7698 20-2月 -81 1600 300 30

7521 WARD SALESMAN 7698 22-2月 -81 1250 500 30

------23对于每个员工,显示其加入公司的天数

select ename,floor(sysdate-hiredate) totdays from emp;

ENAME TOTDAYS

---------- ----------

SMITH 8721

ALLEN 8656

WARD 8654

JONES 8615

MARTIN 8436

BLAKE 8586

CLARK 8547

SCOTT 6407

KING 8386

TURNER 8456

ADAMS 6373

JAMES 8370

FORD 8370

MILLER 8319

------24显示姓名字段的任何位置包含"A"的所有员工的姓名

select from emp where ename like '%A%';

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

---------- ---------- --------- ---------- ---------- ---------- ---------- ----------

7499 ALLEN SALESMAN 7698 20-2月 -81 1600 300 30

7521 WARD SALESMAN 7698 22-2月 -81 1250 500 30

7654 MARTIN SALESMAN 7698 28-9月 -81 1250 1400 30

7698 BLAKE MANAGER 7839 01-5月 -81 2850 30

7782 CLARK MANAGER 7839 09-6月 -81 2450 10

7876 ADAMS CLERK 7788 23-5月 -87 1100 20

7900 JAMES CLERK 7698 03-12月-81 950 30

------25以年月日的方式显示所有员工的服务年限 (大概)

select empno,ename,('在职'||trunc((months_between(sysdate,hiredate))/12)||'年'

||trunc(mod((months_between(sysdate,hiredate)),12))||'个月'

||round(sysdate-(add_months(hiredate,months_between(sysdate,hiredate))))||'天') tot from emp;

select to_char(to_date('0001-01-01','yyyy-mm-dd')+(sysdate-hiredate)-366-31,'yy:mm:dd') as tot from emp;

1检索数据

SELECT prod_nameFROM Products;

#检索单列

SELECT prod_id, prod_name, prod_priceFROMProducts;

#检索多列

SELECT FROM Products;

#检索所有列

SELECT DISTINCTvend_id FROMProducts;

#检索不同的值

SELECTprod_name FROM Products LIMIT 5;

#返回不超过5行数据

SELECTprod_name FROM Products LIMIT 5 OFFSET 5;

#返回从第5行起的5行数据。LIMIT指定返回的行数,LIMIT带的OFFSET指定从哪儿开始。

2排序检索数据

SELECTprod_name

FROMProducts

ORDER BYprod_name;

#排序数据

SELECT prod_id, prod_price, prod_name

FROMProducts

ORDER BY prod_price, prod_name;

#按多个列排序

SELECT prod_id, prod_price, prod_name

FROMProducts

ORDER BY 2, 3;

#按列位置排序,第三行表示先按prod_price, 再按prod_name进行排序

SELECT prod_id, prod_price, prod_name

FROMProducts

ORDER BY prod_priceDESC, prod_name;

#prod_price列以降序排序,而prod_name列(在每个价格内)仍然按标准的升序排序

3过滤数据

SELECT prod_name, prod_price

FROMProducts

WHERE prod_price< 10;

#检查单个值

SELECT prod_name, prod_price

FROMProducts

WHERE vend_id <> ‘DLL01’;

#不匹配检查

SELECT prod_name, prod_price

FROMProducts

WHERE prod_priceBETWEEN 5 AND 10;

#范围值检查

SELECT cust_name

FROMCUSTOMERS

WHERE cust_emailIS NULL;

#空值检查

4高级数据过滤

SELECTprod_id, prod_price, prod_name

FROMProducts

WHERE vend_id = ‘DLL01’ANDprod_price <= 4;

#AND *** 作符

SELECTprod_name, prod_price

FROMProducts

WHEREvend_id=’DLL01’ OR vend_id=’BRS01’;

#OR *** 作符

SELECTprod_name, prod_price

FROMProducts

WHERE (vend_id = ’DLL01’ORvend_id=’BRS01’)

ANDprod_price >= 10;

#求值顺序 AND的优先级高于OR

SELECTprod_name, prod_price

FROMProducts

WHERE vend_idIN (‘DLL01’,’BRS01’)

ORDER BY prod_name;

#IN *** 作符

SELECT prod_name

FROMProducts

WHERE NOTvend_id = ‘DLL01’

ORDER BY prod_name;

#NOT *** 作符

SELECT prod_name

FROMProducts

WHEREvend_id <> ‘DLL01’

ORDER BY prod_name;

#NOT *** 作符

一、增:有2种方法

1使用insert插入单行数据:

语法:insert [into] <表名> [列名] values <列值>

例:insert into Strdents (姓名,性别,出生日期) values ('王伟华','男','1983/6/15')

注意:如果省略表名,将依次插入所有列

2使用insert,select语句将现有表中的 数据添加到已有的新表中

语法:insert into <已有的新表> <列名> select <原表列名> from <原表名>

例:insert into addressList ('姓名','地址','电子邮件')select name,address,email

from  Strdents

注意:查询得到的数据个数、顺序、数据类型等,必须与插入的项保持一致

二、删:有2中方法

1使用delete删除数据某些数据

语法:delete from <表名> [where <删除条件>]

例:delete from a where name='王伟华'(删除表a中列值为王伟华的行) 

注意:删除整行不是删除单个字段,所以在delete后面不能出现字段名

2使用truncate table 删除整个表的数据

语法:truncate table <表名>

例:truncate table addressList

注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能

用于有外建约束引用的表

三、改使用update更新修改数据

语法:update <表名> set <列名=更新值> [where <更新条件>]

例:update addressList set 年龄=18 where 姓名='王伟华'

注意:set后面可以紧随多个数据列的更新值(非数字要引号);where子句是可选的(非数字要引号),用来限制条件,如果不选则整个表的所有行都被更新

四、查

语法:select <列名> from <表名> [where <查询条件表达试>] [order by <排序的列

名>[asc或desc]]

1)查询所有数据行和列

例:select from a

说明:查询a表中所有行和

2)查询部分行列--条件查询

例:select i,j,k   from  a   where f=5

说明:查询表a中f=5的所有行,并显示i,j,k3列

3)在查询中使用AS更改列名

例:select name as 姓名 from a where  gender='男'

说明:查询a表中性别为男的所有行,显示name列,并将name列改名为(姓名)显示

4)查询空行

例:select name from a where email is null

说明:查询表a中email为空的所有行,并显示name列;SQL语句中用is null或者is not null

来判断是否为空行

5)在查询中使用常量

例:select name '北京' as 地址 from a

说明:查询表a,显示name列,并添加地址列,其列值都为'北京'

6)查询返回限制行数(关键字:top )

例1:select top 6 name from a

说明:查询表a,显示列name的前6行,top为关键字(oracle 中没有top关键字

用rownum替代)

select      from   a where   rownum<6

7)查询排序(关键字:order by , asc , desc)

例:select name

from a

where grade>=60

order by desc

说明:查询表中成绩大于等于60的所有行,并按降序显示name列;默认为ASC升序

USE teachingSystem

GO

--(2)

IF NOT EXISTS(SELECT FROM Student WHERE Sname='张思文')

PRINT '没有张思文这个人,所以你无法修改啦!'

ELSE BEGIN

SELECT Sno,Ssex FROM Student WHERE Sname='张思文'

UPDATE Student SET Sname='张思武' WHERE Sname='张思文'

SELECT Sno,Ssex FROM Student WHERE Sname='张思武'

END

GO

--(3)

DECLARE @I INT,@S INT

SET @I=1

SET @S=0

WHILE @I<=100

BEGIN

SET @S=@S+@I

SET @I=@I+1

END

PRINT @S

GO

--(4)

DECLARE @I INT,@S INT

SET @I=2

SET @S=1

WHILE @I<=10

BEGIN

SET @S=@S@I

SET @I=@I+1

END

PRINT @S

以上就是关于删除数据库的sql语句如何写全部的内容,包括:删除数据库的sql语句如何写、如何用SQL语句实现某个字段数为随机数、SQL数据库如何实现联合查询谢谢!(sql语句联合查询)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10080790.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存