SQL-Note 1:
–查询语句:
代码语言:javascript复制select name(一个或多个属性)
from instructor(一个或者多个表)
where dept_name = 'cs'(满足条件)
练习:找到导师表中的系名
select dept_name
from instructor
找到表中所有属性:
select * –但是这个在计算机中处理效率没有一个个都列出来的效率高。
from instructor
注意:
select dept_name from instructor
当有多个导师属于一个系,
就会有重复。
代码语言:javascript复制--去重复:
select distinct dept_name
from instructor
代码语言:javascript复制select distinct dept_name,id
from instructor
–像这样去重复多个元素,去除的是满足这两个条件出来的 重复行
–注意:distinct前面没有属性,只能后面添加一个或者多个属性
代码语言:javascript复制select distinct 主码
from 表
结果相当于没有distinct,但是效率会变低。
– select中的属性可以进行操作,还可以是函数调用。但是不会修改数据库中数据
代码语言:javascript复制select salary*1.1
from instructor
找导师工资出来,输出结果为1.1倍原工资数据
--
and or not 组成:复合条件 和 where 连用
代码语言:javascript复制select salary>8000 and dept_name = 'cs'
–用as起名字:
代码语言:javascript复制select salary*1.1 as over_salary
from instructor
–字符串处理函数:
代码语言:javascript复制字符串1 字符串2 :字符串拼接
upper(字符串)
lower(字符串)
–字符串匹配:
代码语言:javascript复制-'Intro%' --寻找开头为Intro
-'�c%' --寻找中间含有abc
-'___' --寻找三位长度
-'___%' --寻找至少三位
代码语言:javascript复制select name
from instructor
where name like '�c%' --注意用like进行筛讯
定义转义字符
–数字区间条件:between and:
代码语言:javascript复制select name
from instructor
where salary between 9000 and 10000
–多条件匹配
代码语言:javascript复制select name, course_id
from instructor, teaches
where (instructor.ID, dept_name) = (teaches.ID, ’Biology’);
–排序:desc降序 asc升序
代码语言:javascript复制– Example: order by name desc
Can sort on multiple attributes
– Example: order by dept_name, name --按照两个元素排序,字符串首字母。