SQL课堂笔记--查询表1

2017/11.10

SQL的主要功能:

1.数据定义
 2.数据查询
 3.数据操作
 4.数据控制功能(了解)
 
 
SQL语言的动词:

数据定义:create,drop, alter
 数据查询:select
 数据操作:insert,update,deledte
 数据控制:crant,revoke

数据查询语句的基本格式:
  select[distinct] 目标列      //distinct去掉记录中的重复值
  from 基本表(或视图)
  [where 条件表达式]
  [group by 列名1 [having内部函数表达式] ]
  [order by 列名2 [asc(升序)/desc(降序)] ] 
       中括号中的表示可选项,可有可无

select语句的含义是,根据where子句条件表达式,从from子句中的基本表达式或视图中检索出满足条件的元祖,
 按select子句的目标列,选出元组中的相应列形成新的表.新表记录中可以按order by 子句中指定的列名2进行
 升序或降序排序,还可以按group不用子句指定的列名1的值对元组进行分组

1.select语句:
  ues 数据库名
  go
  select * from 表名     --查询所有内容
  select sno,sname from 表名   --查询指定内容
  select sno,sname,2007-sage as出生年月  from student  --as出生年月,表示重命名新列名
             --不写as也行,用空格表示
  
  select top 3 * from student  --查询前3条语句
  select top 6 name from student  --查询前6条的单个信息(姓名等)
  
  查询结果放入新表中:
  select sname,ssex into newstudent from student    --newtable会自动创建

where子句:
   1.查询所有性别为男生的学生:

select * from student where ssex=‘男‘

2.检索年龄在19岁以上的学号,姓名和性别:

select sno,sname,ssex from student where ssage>19

3.查询年龄在18-20岁之间的学号和姓名:
 
    select sno,sname from student where age  not between 18 and 20
    select sno,sanem from student where age<18 or age>20
  in查询:
   查询专业为计算机,通信的所有学生的学生:
   select * from student where sdept in (‘计算‘,‘通信‘)

or查询:
   
  and查询:
   select * from student where sdept=‘计算机‘ and ssex=‘男‘

字符匹配查询:

通配符:
    _ (下划线)表示任何一个字符
   
    % 表示任何多个字符(包括0个)

查询课程名第二个字符为据的课程:

select * from course where cname like ‘_据%‘

access的通配符为:
     ?代表单一字符     相当于 _
     *代表0或多个字符     相当于%
     #代表单一数字(0-9)

select * from course where cname like ‘?据*‘

空值查询:
   查询没有填写年龄的学生姓名
    select  sname from student where sage is null

时间: 2024-10-08 16:41:16

SQL课堂笔记--查询表1的相关文章

SQL课堂笔记

--注释 公司里一般而是用绝不重复的guid()做主键(web项目不常用) 如null参与运算,结果都是null 在数据库中创建索引能提高查询效率,)只在经常要检索的字段创建索引) sql查询null的数据 selsct * from table where name is null 查询年龄介于20到30的数据 selsct * from table where age between 20 and 30 查询年龄是20,22,32,46的数据 selsct * from table wher

SQL课堂笔记--多表查询

2017.11.14 二:最基础的连接查询----多表查询 1.使用内部连接  内部连接也叫自然连接,最常见的连接形式   语法:     select 选择列表 from 表名1 ,表名2 where 表名1.列名1=表名2.列名2         或select 选择列表 from 表名1 join 表名2 on 表名1.列名1=表名2.列名2 例1:查询每个学生及其选修课程情况:  select student.*,sc.* from student,sc where student.sn

SQL课堂笔记--聚合函数

2017.11.13 聚合函数: COUNT(*)统计表中元组个数 COUNT(属性名)统计一列中列值的个数 //不统计空值 SUM计算一列值的总和(此列必须是数值行) AVG计算一列的平均值(此列必须是数值行) MAX求一列值中的最大值 MIN求一列值中的最小值    元组:每一条数据  例1.求计算机专业学生的平均年龄:  select avg(sage) as 平均年龄 from student where sdept='计算机'  例2.统计学校共开设课多少们课程:  select co

SQL课堂笔记--管理表

2017.11.09 1.使用T-SQL语句显示表的信息,调用系统的存储过程 sp_help (student)表名2.修改表的结构 增加列:  alter table 表名  add 列名 列的描述 删除列:  alter table 列名  drop column 列名 重命名表名:  use 数据库名  go  sp_rename 'old_table name','new_table name',('object')可写可不写 注释:  单行注释 --  多行注释/*     */ 3.

SQL课堂笔记--存储过程和触发器

---恢复内容开始--- 2017.11.21                  存储过程和触发器   1.存储过程的作用 当SQL server 创建应用程序时,可以用两种方法存储和执行程序: 1).将程序存储在本地,然后创建SQL server 发送命令并处理结果的应用程序  2).将程序以存储过程的形式存储在SQL Server服务器中,然后创建执行存储过程并处理结果的应用程序.SQL server推荐使用这种  2.存储过程(Store Procedure)是一组为了完成特定功能的T-S

SQL课堂笔记--嵌套查询

2017.11.15六:嵌套查询 嵌套查询概述:  一个select-from-where 语句称为一个查询块  将一个查询块嵌套在另一个查询块的where子句或having短语的条件中的查询称为嵌套查询   例1:查询选修了2号课程得学生姓名:  内连接:select sname from student,sc where student.sno=sc.sno and cno=2        或:select sname from student where sno in   --外层查询/

[笔记] 查询表记录空间占用情况SQL脚本

USE ExpressDB CREATE TABLE #tablespaceinfo ( nameinfo VARCHAR(50) , rowsinfo BIGINT , reserved VARCHAR(20) , datainfo VARCHAR(20) , index_size VARCHAR(20) , unused VARCHAR(20) ) --创建游标 DECLARE Info_cursor CURSOR FOR SELECT '[' + [name] + ']' FROM sys

九章算法系列(#2 Binary Search)-课堂笔记

前言 先说一些题外的东西吧.受到春跃大神的影响和启发,推荐了这个算法公开课给我,晚上睡觉前点开一看发现课还有两天要开始,本着要好好系统地学习一下算法,于是就爬起来拉上两个小伙伴组团报名了.今天听了第一节课,说真的很实用,特别是对于我这种算法不扎实,并且又想找工作,提高自己的情况. 那就不多说废话了,以后每周都写个总结吧,就趁着这一个月好好把算法提高一下.具体就从:课堂笔记.leetcode和lintcode相关习题.hdu和poj相关习题三个方面来写吧.希望自己能够坚持下来,给大家分享一些好的东

Oracle之PL/SQL学习笔记

自己在学习Oracle是做的笔记及实验代码记录,内容挺全的,也挺详细,发篇博文分享给需要的朋友,共有1w多字的学习笔记吧.是以前做的,一直在压箱底,今天拿出来整理了一下,给大家分享,有不足之处还望大家批评指正. PL/SQL定义:PL/SQL是由Oracle开发,专门用于Oracle的程序设计语言. PL---Procedural Language. SQL—Structure QueryLanguage.PL/SQL包括过程化语句和SQL语句     PL/SQL的单位:块. 一个块中可以嵌套