mysql数据库 select语句应用大全

mysql数据库 select语句应用大全
mysql数据库 select语句应用大全

Select 语言应用

1.创建student和score表

2.为student表和score表增加记录

3.查询student表的所有记录

4.查询student表的第2条到4条记录

5.从student表查询所有学生的学号(id)、姓名(name)和院系(department)的信息

6.从student表中查询计算机系和英语系的学生的信息

7.从student表中查询年龄18~24岁的学生信息

8.从student表中查询每个院系有多少人

9.从score表中查询每个科目的最高分

10.查询李四的考试科目(c_name)和考试成绩(grade)

11.用连接的方式查询所有学生的信息和考试信息

12.计算每个学生的总成绩

13.计算每个考试科目的平均成绩

14.查询计算机成绩低于95的学生信息

15.查询同时参加计算机和英语考试的学生的信息

16.将计算机考试成绩按从高到低进行排序

17.从student表和score表中查询出学生的学号,然后合并查询结果

18.查询姓张或者姓王的同学的姓名、院系和考试科目及成绩

19.查询都是湖南的学生的姓名、年龄、院系和考试科目及成绩

简单数据库查询语句

数据查询语言(SELECT语句) 数据操纵语言(INSERT, UPDATE, DELETE语句) 数据定义语言(如CREATE, DROP等语句) 数据控制语言(如COMMIT, ROLLBACK等语句 超详细的SQL语句语法2008-07-11 14:25简单的Transact-SQL查询只包括选择列表、FROM 子句和WHERE子句 一、简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的表或视图、以及搜索条件等。 例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。SELECT nickname,email FROM testtable WHERE name='张三' (一) 选择列表 选择列表(select_list)指出所查询列 它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列 例如,下面语句显示testtable表中所有列的数据: SELECT * FROM testtable 2、选择部分列并指定它们的显示次序 查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如: SELECT nickname,email FROM testtable 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题=列名 列名列标题 如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列标题: SELECT 昵称=nickname,电子邮件=email FROM testtable 4、删除重复行 SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行, 默认为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行, 而TOP n PERCENT时,说明n是表示一百分数,指定返回的行数等于总行数的百分之几。例如: SELECT TOP 2 *FROM testtable SELECT TOP 20 PERCENT * FROM testtable 9、说明:in 的使用方法 select * from table1 where a [not] in (‘值1’,’值2’,’值4’,

数据库SQL查询语句大全修订稿

数据库S Q L查询语句 大全 公司标准化编码 [QQX96QT-XQQB89Q8-NQQJ6Q8-MQM9N]

经典SQL查询语句大全 一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definitio n only 5、说明:删除新表 drop table tabname 6、说明:增加一个列 Alter table tabname add column col type

注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 7、说明:添加主键:Alter table tabname add primary key(col) 说明:删除主键: Alter table tabname drop primary key(col) 8、说明:创建索引:create [unique] index idxname on tabname(col….) 删除索引:drop index idxname 注:索引是不可更改的,想更改必须删除重新建。 9、说明:创建视图:create view viewname as select statement 删除视图:drop view viewname 10、说明:几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围 查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料! 排序:select * from table1 order by field1,field2 [desc] 总数:select count as totalcount from table1 求和:select sum(field1) as sumvalue from table1 平均:select avg(field1) as avgvalue from table1 最大:select max(field1) as maxvalue from table1 最小:select min(field1) as minvalue from table1 11、说明:几个高级查询运算词 A:UNION 运算符

SQL查询语句大全集锦(超经典)

SQL查询语句大全集锦 MYSQL查询语句大全集锦 一、简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。 例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。 复制内容到剪贴板 代码:SELECT `nickname`,`email`FROM `testtable`WHERE `name`='张三' (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列 例如,下面语句显示testtable表中所有列的数据: 复制内容到剪贴板 代码:SELECT * FROM testtable 2、选择部分列并指定它们的显示次序 查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如: 复制内容到剪贴板 代码:SELECT nickname,email FROM testtable 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题=列名 列名列标题 如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列 标题:

复制内容到剪贴板 代码:SELECT 昵称=nickname,电子邮件=email FROM testtable 4、删除重复行 SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认 为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是 表示一百分数,指定返回的行数等于总行数的百分之几。 例如: 复制内容到剪贴板 代码:SELECT TOP 2 * FROM `testtable` 复制内容到剪贴板 代码:SELECT TOP 20 PERCENT * FROM `testtable` (二) FROM子句 FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图, 它们之间用逗号分隔。 在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列 所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定: 复制内容到剪贴板 代码:SELECT `username`,citytable.cityid FROM `usertable`,`citytable` WHERE usertable.cityid=citytable.cityid在FROM子句中可用以下两种格式为表或视图指定别名: 复制内容到剪贴板 代码:表名 as 别名 表名别名例如上面语句可用表的别名格式表示为: 复制内容到剪贴板

SQL查询语句大全集锦

SQL查询语句大全集锦 一、简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。 例如,下面的语句查询testtable表中姓名为“张三”的nickname 字段和email字段。 代码:SELECT `nickname`,`email`FROM `testtable`WHERE `name`='张三' (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列 例如,下面语句显示testtable表中所有列的数据: 代码:SELECT * FROM testtable 2、选择部分列并指定它们的显示次序 查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺 序相同。

代码:SELECT nickname,email FROM testtable 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题=列名 列名列标题 如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列 标题: 代码:SELECT 昵称=nickname,电子邮件=email FROM testtable 4、删除重复行 SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认 为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n 行,而TOP n PERCENT时,说明n是 表示一百分数,指定返回的行数等于总行数的百分之几。

oracle的Select语句

oracle的Select语句 select 查询的一般格式是 select {[distinct|all] columns | *} //1 选择列 from {tables | views | other select} //2 数据来源 where conditions //3 选择条件 group by columns //4 分组 having conditions //5 选择 order by columns //6 排序 一、选择列 1. select后面出现的内容可以是from后面的数据来源中的列,也可以是*,也可以是常量或者T-SQL函数。 2. 如果列名很长,或者多个表的列名有冲突,可以使用as来定义别名。 二、数据来源 1. 数据来源可以是表,视图,还可以是其他的select语句(即,行集)。 2. from子句中可以包含连接说明,即inner join,outer join这样的内容。这个内容参见下面的内容。 3. 可以在from子句中为表,视图,或者其他select语句的结果指定别名,但是不要用as。 三、where子句 1. 多个条件之间可以用and 或者or连接。 2. null值查询要使用is null,或者is not null,而不是=null或者<>null 3. like是进行模式匹配的一种方式,列的数据类型可以是任何字符或者日期数据。它的否定形式是not like。%和_是通配符,一个表示0或多个任意字符,一个表示一个任意字符。但是这两个字符如果不出现在like后面的模式中,就是两个普通字符。 4. text列的where条件只能是like,is null,patindex。 5. 如果要在like中匹配普通字符%和_,可以使用escape定义一个转义字符,这个转义字符可以随意指定。然后将这个转义字符放在一个通配符或者单引号之前,就表示这个通配符或者单引号是一个普通的字符。 6. in ,not in,between and,not between and.“between a and b”将会包括a和b在内。in可以转换为一个连接,但是not in不能。 7. where exists R.当且仅当R非空时,条件exists R为真。其否定形式是where not exists R. 8. where s <| >| = | <>| >=|<= all/any R.否定形式是在s前对整个表达式加not. 四、连接查询 两张表的连接可以用from子句的ansi连接语法或者where子句中的sql连接语法实现。ansi 连接语法格式为From table1 join_type table2 on(conditions) join_type table3 on(conditions)。 连接有等值连接,笛卡尔积(交叉连接),自然连接,theta连接,外部链接五种。 1 等值连接 select students.* , stu_course.* from students inner join stu_course on(students.id = stu_course.studentid)--31条记录,stu_course的记录数目

SQL数据库查询语句范例

推荐一、简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和Where子句。它们分别说明所查询列、查询的表或视图、以及搜索条件等。例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。Select nickname,email FROM testtable Where n ame=’张三’ (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列例如,下面语句显示testtable表中所有列的数据:Select * FROM testtable 2、选择部分列并指定它们的显示次序 查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如:Select nickname,email FROM testtable 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题=列名列名列标题 如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列标题: Select 昵称=nickname,电子邮件=email FROM testtable 4、删除重复行 Select语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为ALL。使用DISTINC T选项时,对于所有重复的数据行在Select返回的结果集合中只保留一行。 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是表示一百分数,指定返回的行数等于总行数的百分之几。例如: Select TOP 2 *FROM testtable Select TOP 20 PERCENT * FROM testtable (二) FROM子句 FROM子句指定Select语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。 在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。例如在usertable和cityta ble表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定: Select username,citytable.cityid FROM usertable,citytable Where usertable.cityid=citytable.cityid 在FROM子句中可用以下两种格式为表或视图指定别名: 表名 as 别名表名别名

实验4--SQL语言--SELECT查询操作

实验4--SQL语言--SELECT查询操作 1、基于?教学管理?数据库jxgl,试用SQL的查询语句表达下列查询。(1)--检索年龄大于23的男学生的学号和姓名-- select sno,sn from s where sex='男'and age > 23 (2)--检索至少选修一门课程的女学生姓名-- select sn from S,SC where sex='女' AND S.Sno=SC.Sno group by S.Sn having count(*)>=1; (3)--检索王同学没有选修的课程的课程号-- select cno from c where https://www.360docs.net/doc/d813961588.html,o not in (select cno from sc,s where sc.sno=s.sno and sn like'王%') (4)--检索至少选修两门课程的学生学号-- select distinct s.sno from s,sc where sc.sno=s.sno group by s.sno having count(*)>=2; (5)--检索全部学生都选修的课程的课程号与课程名-- select cno,cn from c where not exists (select*from s where not exists (select*from sc where s.sno=sc.sno and https://www.360docs.net/doc/d813961588.html,o=https://www.360docs.net/doc/d813961588.html,o)) (6)--检索选修了所有3学分课程的学生学号和姓名-- select distinct s.sno,s.sn from s,sc where exists (select*from c where ct='3'and s.sno=sc.sno and https://www.360docs.net/doc/d813961588.html,o=https://www.360docs.net/doc/d813961588.html,o) 2、基于“教学管理”数据库jxgl,试用SQL的查询语句表达下列查询。 (1)--统计有学生选修的课程门数-- select count(distinct https://www.360docs.net/doc/d813961588.html,o)from sc; (2)--查询选修4号课程的学生的平均年龄-- select avg(s.age) from s,sc where s.sno=sc.sno and cno='4';

SELECT语句练习题答案

SELECT 语句练习题 有下列四个表: 1、学生表 S_NO S_NAME S_SEX S_BIRTHDAY CLASS 108曾华男1905-5-2295033 105匡明男1905-5-1895031 107王丽女1905-5-795033 101李军男1905-5-995033 109王芳女1905-5-1895031 103陆君男1905-5-2095031 2、教师表 T_NO T_NAME TSEX T_BIRTHDAY PROF DEPART 804李诚男1958-12-2副教授计算机系856张旭男1969-3-12讲师电子工程系825王萍女1972-5-5助教计算机系831刘冰女1977-8-14助教电子工程系 3、课程表 C_NO C_NAME T_NO 3-105计算机导论825 3-245操作系统804 6-166数据电路856 9-888高等数学100 4、成绩表 S_NO C_NO DEGREE 1033-24586 1053-24575 1093-24568 1033-10592 1053-10588 1093-10576 1013-10564 1073-10591 1083-10578 1016-16685 1076-10679 1086-16681 Select 语句的最基本结构:Select …. From ….where order by:排序子句(ASC:升序,DESC:降序)

like:模式匹配(通配符:% 可以匹配任意类型和长度的字符; _ 任意单个字符。 聚合函数(SUM A VG、COUNT、COUNT(*)、MAX、MIN) GROUP BY:分组 1、查询Student表中的所有记录的S_NAME、S_SEX和Class列。 2、查询教师所有的单位即不重复的Depart列。 3、查询Student表的所有记录。 4、查询Score表中成绩在60到80之间的所有记录。 5、查询Score表中成绩为85,86或88的记录。 6、查询Student表中“95031”班或性别为“女”的同学记录。 7、以Class降序查询Student表的所有记录。 8、以C_NO升序、Degree降序查询Score表的所有记录。 9、查询“95031”班的学生人数。 10、查询Score表中的最高分的学生学号和课程号。 11、查询‘3-105’号课程的平均分。 12、查询Score表中至少有5名学生选修的并以3开头的课程的平均分数。 13、查询最低分大于70,最高分小于90的S_NO列。 14、查询所有学生的S_NAME、C_NO和Degree列。 15、查询所有学生的S_NO、C_NAME和Degree列。 16、查询所有学生的S_NAME、C_NAME和Degree列。 17、查询“95033”班所选课程的平均分。 SQL语句练习题参考答案 1、select S_NAME,S_SEX,Class from Student; 2、select distinct depart from teacher; 3、select S_NO as '学号',S_NAME as '姓名',S_SEX as '性别',S_BIRTHDAY as'出生日期',Class as'班号'from student; 或 select S_NO as 学号,S_NAME as 姓名,S_SEX as 性别,S_BIRTHDAY as 出生日期,Class as 班号from student; 4、select * from score where degree between 60 and 80; 或select * from score where degree>=60 and degree<=80; 5、select * from score where degree in (85,86,88); 6、select * from student where class='95031'or S_SEX='女'; 7、select * from student order by class desc; 8、select * from score order by C_NO asc ,degree desc; 或select * from score order by C_NO ,degree desc; 9、select count(*) as CNT from student where class='95031'; 10、select S_NO as '学号',C_NO as '课程号', degree as '最高分' from score where degree=(select max(degree) from score) 11、select avg(degree)as 课程平均分from score where C_NO='3-105'; 12、select C_NO,avg(degree) from score where C_NO like'3%'group by C_NO having count(*) >5; 13、select S_NO from score group by S_NO having min(degree)>70 and max(degree)<90; 14、select student.S_NAME,score.C_NO,score.degree from student,score where student.S_NO=score.S_NO; 15、select x.S_NO,y.C_NAME,x.degree from score x,course y where x.C_NO=y.C_NO; 16、select x.S_NAME,y.C_NAME,z.degree from student x,course y,score z where x.S_NO=z.S_NO and z.C_NO=y.C_NO;

数据库基本SQL语句大全

数据库基本SQL语句大全 数据库基本----SQL语句大全 一、基础 1、说明:创建数据库 Create DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1、d at' --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 typ e2 [not null],、、) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2…from tab_old definit ion only 5、说明:删除新表 drop table tabname 6、说明:增加一个列 Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的就是增加varchar类型的长度。 7、说明:添加主键: Alter table tabname add primary key(col) 说明:删除主键: Alter table tabname drop primary key(col) 8、说明:创建索引:create [unique] index idxname on tabname(col…、) 删除索引:drop index idxname 注:索引就是不可更改的,想更改必须删除重新建。 9、说明:创建视图:create view viewname as select statement

mysql中select简单查询

1.简单查询select语句(1) (1) create database chapter04; use chapter04; create table exam ( id int not null primary key default null auto_increment, name varchar(20) not null, Chinese double, math double, english double ); insert into exam values(null,'关羽',85,76,70); insert into exam values(null,'张飞',70,75,70); insert into exam values(null,'赵云',90,65,95); (2) select name,english from exam; (3) select distinct english from exam; 2.简单查询select语句(2) (1)select Chinese+10,math+10,english+10 from exam; (2)select sum(Chinese+math+english) from exam where name='关羽’;

select sum(Chinese+math+english) from exam where name='张飞’; select sum(Chinese+math+english) from exam where name='赵云’; (3)select sum(Chinese+math+english) as score from exam; 3.简单查询select语句(3) (1)select name,score from exam where name='张飞'; (2)select name,english from exam where english>90; (3)select name,score from exam where score>230; 4.简单查询select语句(4) (1)select name,english from exam where english between 80 and 100; (2)select name,math from exam where math in (75,76,77); (3)insert into exam values(null,'张三',80,70,78); select score,name from exam where name like'张%'; (4)select name,score from exam where math>70 and Chinese>80; 5.聚合函数-count (1)select count (*) from exam; (2)select count (*) from exam where math>70;

SQL语句

题型:SQL语句 题目3.1:设教学数据库中有4个关系: 教师关系 T(T#,TNAME,TITLE) 课程关系 C(C#,CNAME,T#) 学生关系 S(S#,SNAME,AGE,SEX) 选课关系 SC(S#,C#,SCORE) 试用SQL查询语句表示下列查询。 ①检索年龄小于17岁女生的学号和姓名。 ②检索男生所学课程的课程号和课程名。 ③检索男生所学课程的任课老师的工号和姓名。 ④检索至少选修两门课程的学生学号。 ⑤检索至少有学号为S2和S4学生选修的课程的课程号。 ⑥检索WANG同学不学的课程的课程号。 ⑦检索全部学生都选修的课程的课程号与课程名。 ⑧检索选修课程包含LIU老师所授全部课程的学生学号。 答案:①SELECT S#,SNAME FROM S WHERE AGE<17 AND SEX=’F’; ②SELECT C.C#,CNAME FROM S,SC,C WHERE S.S#=SC.S# AND SC.C#=C.C# AND SEX=’M’; ③SELECT T.T#’,TNAME FROM S,SC,C,T WHERE S.S#=SC.S# AND SC.C#=C.C# AND C.T#=T.T# AND SEX=’M’; ④SELECT DISTINCT X.S# FROM SC AS X,SC AS Y WHERE X.S#=Y.S# AND X.C#!=Y.C#; ⑤SELECT DISTINCT X.C# FROM SC AS X,SC AS Y WHERE X.S#=S2 AND Y.S#=S4 AND X.C#=Y.C#; ⑥SELECT C# FROM C WHERE NOT EXISTS(SELECT * FROM S,SC WHERE S.S#=SC.S# AND SC.C#=C.C# AND SNAME=’WANG’); ⑦SELECT C#,CNAME FROM C WHERE NOT EXISTS(SELECT * FROM S WHERE NOT EXISTS(SELECT * FROM SC WHERE S#=S.S# AND C#=C.C#)); ⑧SELECT DISTINCT S# FROM SC AS X

数据库SQL语句大全

SQL语句大全--语句功能 --数据操作 SELECT --从数据库表中检索数据行和列 INSERT --向数据库表添加新数据行 DELETE --从数据库表中删除数据行 UPDATE --更新数据库表中的数据 -数据定义 CREATE TABLE --创建一个数据库表 DROP TABLE --从数据库中删除表 ALTER TABLE --修改数据库表结构 CREATE VIEW --创建一个视图 DROP VIEW --从数据库中删除视图 CREATE INDEX --为数据库表创建一个索引 DROP INDEX --从数据库中删除索引 CREATE PROCEDURE --创建一个存储过程 DROP PROCEDURE --从数据库中删除存储过程CREATE TRIGGER --创建一个触发器 DROP TRIGGER --从数据库中删除触发器 CREATE SCHEMA --向数据库添加一个新模式DROP SCHEMA --从数据库中删除一个模式CREATE DOMAIN --创建一个数据值域 ALTER DOMAIN --改变域定义 DROP DOMAIN --从数据库中删除一个域 --数据控制 GRANT --授予用户访问权限 DENY --拒绝用户访问 REVOKE --解除用户访问权限 --事务控制 COMMIT --结束当前事务 ROLLBACK --中止当前事务 SET TRANSACTION --定义当前事务数据访问特征 --程序化SQL DECLARE --为查询设定游标 EXPLAN --为查询描述数据访问计划 OPEN --检索查询结果打开一个游标

sql中select语句详解及用途

sql中select语句详解及用途1 2 3 4 5 6 7 8 9 1 0 1 1 SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ] * | expression [ AS output_name ] [, ...] [ FROM from_item [, ...] ] [ WHERE condition ] [ GROUP BY expression [, ...] ] [ HAVING condition [, ...] ] [ { UNION | INTERSECT | EXCEPT } [ ALL ] select ] [ ORDER BY expression [ ASC | DESC | USING operator ] [, ...] ] [ FOR UPDATE [ OF tablename [, ...] ] ] [ LIMIT { count | ALL } ] [ OFFSET start ] 这里 from_item 可以是: 1 2 3 4 5 6 7 8 [ ONLY ] table_name [ * ] [ [ AS ] alias [ ( column_alias_list ) ] ] | ( select ) [ AS ] alias [ ( column_alias_list ) ] | from_item [ NATURAL ] join_type from_item [ ON join_condition | USING ( join_column_list ) ] 输入 ? expression 表的列/字段名或一个表达式. output_name 使用 AS 子句为一个列/字段或一个表达式声明另一个名称.这个名称主要用于标记输出列用于显示。它可以在 ORDER BY 和 GROUP BY 子句里代表列/字段的值.但是 output_name 不能用于 WHERE 或 HAVING 子句;用表达式代替. from_item 一个表引用,子查询,或者 JOIN 子句.详见下文. condition 一个布尔表达式,给出真或假的结果.参见下面描述的 WHERE 和 HAVING 子句.

Select 查询语句

Select 查询语句 语法:SELECT [ALL|DISTINCT] <目标列表达式> [AS 列名] [,<目标列表达式> [AS 列名] ...] FROM <表名> [,<表名>…] [WHERE <条件表达式> [AND|OR <条件表达式>...] [GROUP BY 列名[HA VING <条件表达式>> [ORDER BY 列名[ASC | DESC> 解释:[ALL|DISTINCT] ALL:全部;DISTINCT:不包括重复行 <目标列表达式> 对字段可使用A VG、COUNT、SUM、MIN、MAX、运算符等 <条件表达式> 查询条件谓词 比较=、>,<,>=,<=,!=,<>, 确定范围BETWEEN AND、NOT BETWEEN AND 确定集合IN、NOT IN 字符匹配LIKE(“%”匹配任何长度,“_”匹配一个字符)、NOT LIKE 空值IS NULL、IS NOT NULL 子查询ANY、ALL、EXISTS 集合查询UNION(并)、INTERSECT(交)、MINUS(差) 多重条件AND、OR、NOT 对查询结果分组 [HA VING <条件表达式>] 分组筛选条件 [ORDER BY 列名[ASC | DESC> 对查询结果排序;ASC:升序DESC:降序 例1:select student.sno as 学号, https://www.360docs.net/doc/d813961588.html, as 姓名, course as 课程名, score as 成绩from score,student where student.sid=score.sid and score.sid=:sid 例2:select student.sno as 学号, https://www.360docs.net/doc/d813961588.html, as 姓名,A VG(score) as 平均分from score,student where student.sid=score.sid and student.class=:class and (term=5 or term=6) group by student.sno, https://www.360docs.net/doc/d813961588.html, having count(*)>0 order by 平均分DESC 例3:select * from score where sid like '9634' 例4:select * from student where class in (select class from student where name='陈小小')

数据库sql查询语句练习4_习题_结果图书_习题

现有图书管理数据库的三个关系模式: 图书(总编号, 分类号, 书名, 作者, 出版单位, 单价)读者(借书证号, 单位, 姓名, 性别, 职称, 地址) 借阅(借书证号, 总编号, 借书日期) 具体数据为:

借阅: 根据以上描述,请完成: DDL 1.写出创建上述表的语句 命令:create table图书(总编号varchar(7)primary key,分类号varchar(8),书名varchar(18),作者varchar(8),出版单位varchar(18),单价float) create table读者(借书证号varchar(4)primary key,单位varchar(7),姓名varchar(8),性别varchar(2),职称varchar(8),地址varchar(18)) create table借阅(借书证号varchar(3),总编号varchar(6),借书日期date,primary key(借书证号,总编号,借书日期)) DML 2.给出插入上述数据的insert语句 命令: insert into图书values('445501','TP3/12','数据库导论','王强','科学出版社', insert into图书values('445502','TP3/12','数据库导论','王强','科学出版社', insert into图书values('445503','TP3/12','数据库导论','王强','科学出版社', insert into图书values('332211','TP5/10','计算机基础','李伟','高等教育出版社', insert into图书values('112266','TP3/12','FoxBASE','张三','电子工业出版社', insert into图书values('665544','TS7/21','高等数学','刘明','高等教育出版社', insert into图书values('114455','TR9/12','线性代数','孙业','北京大学出版社', insert into图书values('113388','TR7/90','大学英语','胡玲','清华大学出版社', insert into图书values('446601','TP4/13','数据库基础','马凌云','人民邮电出版社', insert into图书values('446602','TP4/13','数据库基础','马凌云','人民邮电出版社', insert into图书values('446603','TP4/13','数据库基础','马凌云','人民邮电出版社', insert into图书values('449901','TP4/14','FoxPro大全','周虹','科学出版社', insert into图书values('449902','TP4/14','FoxPro大全','周虹','科学出版社', insert into图书values('118801','TP4/15','计算机网络','黄力钧','高等教育出版社', insert into图书values('118802','TP4/15','计算机网络','黄力钧','高等教育出版社', insert into读者values('111','信息系','王维利','女','教授','1号楼') insert into读者values('112','财会系','李立','男','副教授','2号楼')

相关文档
最新文档