数据库学习之三--Select查询及运算符

一、SELECT语句:用于从表中选取数据;语法如下:

  1. 列查询: SELECT 列名称1,  列名称2 FROM 表名称;

  2. 查询所有数据: SELECT * FROM 表名称;

  3. 使用AS为列查询设定别名: SELECT 列名称1 AS id, 列名称2 AS name FROM 表名称;

  4. 使用WHERE子句有条件地从表中选取数据:SELECT 列名称 FROM 表名称 WHERE 列 运算符 值;

  5. 使用DISTINCT删除结果集中的重复值:SELECT DISTINCT 列名称 FROM 表名称;

二、运算符

  1.操作符

    

  注:摘自W3School;

  2. 算术运算符

    

  3. 逻辑运算符

    

 

MySQL 数据库中,子查询是指在一个查询语句(主查询)中嵌套的另一个查询语句,从 MySQL 4.1 开始引入。子查询可根据比较运算符的不同性进行分类,且能与各种比较运算符结合使用,以构建更复杂查询逻辑。以下介绍一些常见比较运算符在子查询中的使用方法示例: ### 等于(`=`) 基本用法是在主查询的 WHERE 子句中使用 `=` 运算符,将某个字段与子查询返回的单个值进行比较。 ```sql -- 假设存在两个表:employees(员工表) departments(部门表) -- 查询部门 ID 等于子查询返回的特定部门 ID 的员工信息 SELECT * FROM employees WHERE department_id = ( SELECT department_id FROM departments WHERE department_name = 'Sales' ); ``` ### 不等于(`<>` 或 `!=`) 用于在主查询的 WHERE 子句中,将某个字段与子查询返回的单个值进行不相等比较。 ```sql -- 查询部门 ID 不等于子查询返回的特定部门 ID 的员工信息 SELECT * FROM employees WHERE department_id <> ( SELECT department_id FROM departments WHERE department_name = 'HR' ); ``` ### 大于(`>`)、大于等于(`>=`)、小于(`<`)、小于等于(`<=`) 这些比较运算符可用于在主查询的 WHERE 子句中,将某个字段与子查询返回的单个值进行大小比较。 ```sql -- 查询工资大于子查询返回的平均工资的员工信息 SELECT * FROM employees WHERE salary > ( SELECT AVG(salary) FROM employees ); ``` ### `IN` `NOT IN` `IN` 用于判断某个字段的值是否在子查询返回的集合中;`NOT IN` 则相反。 ```sql -- 查询部门 ID 在子查询返回的部门 ID 集合中的员工信息 SELECT * FROM employees WHERE department_id IN ( SELECT department_id FROM departments WHERE location = 'New York' ); -- 查询部门 ID 不在子查询返回的部门 ID 集合中的员工信息 SELECT * FROM employees WHERE department_id NOT IN ( SELECT department_id FROM departments WHERE location = 'Los Angeles' ); ``` ### `BETWEEN AND` 用于判断某个字段的值是否在子查询返回的两个值所确定的范围内。 ```sql -- 查询工资在子查询返回的最低最高工资范围内的员工信息 SELECT * FROM employees WHERE salary BETWEEN ( SELECT MIN(salary) FROM employees ) AND ( SELECT MAX(salary) FROM employees ); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值