SQL的SELECT语句,WHERE语句,AND&OR运算符
注:SQL 对大小写不敏感:SELECT 与 select 是相同的
- SELECT语句
SELECT语句用于从数据库中选取数据
结果被存储表中,称为结果集。
语法:
SELECT * FROM table_name;
//和
SELECT column_name,column_name
FROM table_name;
column_name:列的名字;
table_name:表的名字
例如:
学生信息表为(为程序而虚构)
SNO SNAME SEX DEPT AGE
-------- -------------------- ------ -------- ----------
801 金贤重 男 CS 23
802 李敏镐 男 MA 25
803 那英 女 CS 41
804 金秀贤 女 MA 24
805 刘德华 男 52
806 文章 男 CS 27
807 刘欢 男 MA 51
808 马伊琍 女 CS 36
809 姚笛 女 MA 23
810 周杰伦 男 39
在输入SELECT * FROM s;
之后显示学生s列表中的所有信息
SNO SNAME SEX DEPT AGE
-------- -------------------- ------ -------- ----------
801 金贤重 男 CS 23
802 李敏镐 男 MA 25
803 那英 女 CS 41
804 金秀贤 女 MA 24
805 刘德华 男 52
806 文章 男 CS 27
807 刘欢 男 MA 51
808 马伊琍 女 CS 36
809 姚笛 女 MA 23
810 周杰伦 男 39
如果我想知道学生列表中学生姓名
输入SELECT sname
FROM s;
SQL> SELECT sname
2 FROM s;
SNAME
--------------------
金贤重
李敏镐
那英
金秀贤
刘德华
文章
刘欢
马伊琍
姚笛
周杰伦
- WHERE语句
WHERE 子句用于提取那些满足指定条件的记录。
语法:
SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;
operator:运算符
例如:在上面的学生表中找出男生的信息
//输入的内容
SQL> SELECT * FROM s
2 WHERE sex = '男';
//查询出来的结果
SNO SNAME SEX DEPT AGE
-------- -------------------- ------ -------- ----------
801 金贤重 男 CS 23
802 李敏镐 男 MA 25
805 刘德华 男 52
806 文章 男 CS 27
807 刘欢 男 MA 51
810 周杰伦 男 39
SQL>
找出年龄为23的学生,注意数值字段不要使用引号
SQL> SELECT * FROM s
2 WHERE age = 23;
SNO SNAME SEX DEPT AGE
-------- -------------------- ------ -------- ----------
801 金贤重 男 CS 23
809 姚笛 女 MA 23
SQL>
- AND&OR运算符
AND & OR 运算符用于基于一个以上的条件对记录进行过滤。
如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。
如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。
例如:
找出女生并且年龄大于25岁的学生信息(AND实例)
SQL> SELECT * FROM s
2 WHERE sex = '女'
3 AND age > 25;
SNO SNAME SEX DEPT AGE
-------- -------------------- ------ -------- ----------
803 那英 女 CS 41
808 马伊琍 女 CS 36
SQL>
找出部门(DEPT)为CS 或 年龄为23的学生信息(OR实例)
SQL> SELECT * FROM s
2 WHERE dept = 'CS'
3 OR age = 23;
SNO SNAME SEX DEPT AGE
-------- -------------------- ------ -------- ----------
801 金贤重 男 CS 23
803 那英 女 CS 41
806 文章 男 CS 27
808 马伊琍 女 CS 36
809 姚笛 女 MA 23
SQL>
也可以将AND与OR结合起来使用
例如:找出年龄大于25岁 且 部门为CS 或 MA的学生信息(AND与OR结合使用实例)
SQL> SELECT * FROM s
2 WHERE age >25
3 AND (dept = 'CS' OR dept = 'MA');
SNO SNAME SEX DEPT AGE
-------- -------------------- ------ -------- ----------
803 那英 女 CS 41
806 文章 男 CS 27
807 刘欢 男 MA 51
808 马伊琍 女 CS 36
SQL>