当前位置: 首页 > news >正文

【7】SQL 语句基础应用

SQL 语句基础应用

  • where (筛选)
    • where 子句可使用到运算符
      • 查询表中所有的数据
      • 查询表中的数据,必须满足 1=1(相当于恒成立)
      • 查询表中的 分数(score) 大于 80 分的学生
      • 查询表中 名称(name) 是 赵六 的数据
      • 查询表中 名称(name) 不等于 哈哈 的数据.
      • 查询表中 分数(score) 小于等于 60分 的学生数据
  • 逻辑运算符
    • 查询
      • 查询满足 id 大于 3 并且 分数 大于等于 80 分的学生信息
      • 查询满足 id 大于 3 或者 分数大于等于 80 分的学生信息
      • 查询名称(name) 不是 哈哈 的学生信息

where (筛选)

在 MySQL 数据表中可以使用 SQL select 语句来读取数据。如果需要有条件的从表中获取数据,可将 where 子句添加到 select 语句中。
语法如下:

SELECT[ALL | DISTINCT | DISTINCTROW ][HIGH_PRIORITY][STRAIGHT_JOIN][SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT][SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]select_expr [, select_expr] ...[into_option][FROM table_references[PARTITION partition_list]][WHERE where_condition][GROUP BY {col_name | expr | position}, ... [WITH ROLLUP]][HAVING where_condition][WINDOW window_name AS (window_spec)[, window_name AS (window_spec)] ...][ORDER BY {col_name | expr | position}[ASC | DESC], ... [WITH ROLLUP]][LIMIT {[offset,] row_count | row_count OFFSET offset}][into_option][FOR {UPDATE | SHARE}[OF tbl_name [, tbl_name] ...][NOWAIT | SKIP LOCKED]| LOCK IN SHARE MODE][into_option]into_option: {INTO OUTFILE 'file_name'[CHARACTER SET charset_name]export_options| INTO DUMPFILE 'file_name'| INTO var_name [, var_name] ...
}SELECT is used to retrieve rows selected from one or more tables, and
can include UNION operations and subqueries. Beginning with MySQL
8.0.31, INTERSECT and EXCEPT operations are also supported. The UNION,
INTERSECT, and EXCEPT operators are described in more detail later in
this section. See also
https://dev.mysql.com/doc/refman/8.0/en/subqueries.html.A SELECT statement can start with a WITH clause to define common table
expressions accessible within the SELECT. See
https://dev.mysql.com/doc/refman/8.0/en/with.html.The most commonly used clauses of SELECT statements are these:o Each select_expr indicates a column that you want to retrieve. Theremust be at least one select_expr.o table_references indicates the table or tables from which to retrieverows. Its syntax is described in [HELP JOIN].o SELECT supports explicit partition selection using the PARTITIONclause with a list of partitions or subpartitions (or both) followingthe name of the table in a table_reference (see [HELP JOIN]). In thiscase, rows are selected only from the partitions listed, and anyother partitions of the table are ignored. For more information andexamples, seehttps://dev.mysql.com/doc/refman/8.0/en/partitioning-selection.html.o The WHERE clause, if given, indicates the condition or conditionsthat rows must satisfy to be selected. where_condition is anexpression that evaluates to true for each row to be selected. Thestatement selects all rows if there is no WHERE clause.In the WHERE expression, you can use any of the functions andoperators that MySQL supports, except for aggregate (group)functions. Seehttps://dev.mysql.com/doc/refman/8.0/en/expressions.html, andhttps://dev.mysql.com/doc/refman/8.0/en/functions.html.SELECT can also be used to retrieve rows computed without reference to
any table.URL: https://dev.mysql.com/doc/refman/8.0/en/select.html

where 子句可使用到运算符

在这里插入图片描述
初始化表数据

[root@localhost][db_test]> create table tb_student(-> id int not null auto_increment primary key,-> name varchar(20),-> score int-> );
Query OK, 0 rows affected (0.00 sec)[root@localhost][db_test]> 
[root@localhost][db_test]> insert into tb_student(name, score) values('张三', 95);
Query OK, 1 row affected (0.00 sec)[root@localhost][db_test]> insert into tb_student(name, score) values('李四', 90);
Query OK, 1 row affected (0.00 sec)[root@localhost][db_test]> insert into tb_student(name, score) values('王五', 85);
Query OK, 1 row affected (0.00 sec)[root@localhost][db_test]> insert into tb_student(name, score) values('赵六', 80);
Query OK, 1 row affected (0.01 sec)[root@localhost][db_test]> insert into tb_student(name, score) values('哈哈', 50);
Query OK, 1 row affected (0.00 sec)[root@localhost][db_test]> 

查询表中所有的数据

[root@localhost][db_test]> select * from tb_student;
+----+--------+-------+
| id | name   | score |
+----+--------+-------+
|  1 | 张三   |    95 |
|  2 | 李四   |    90 |
|  3 | 王五   |    85 |
|  4 | 赵六   |    80 |
|  5 | 哈哈   |    50 |
+----+--------+-------+
5 rows in set (0.00 sec)[root@localhost][db_test]> 

查询表中的数据,必须满足 1=1(相当于恒成立)

[root@localhost][db_test]> select * from tb_student where 1 = 1;
+----+--------+-------+
| id | name   | score |
+----+--------+-------+
|  1 | 张三   |    95 |
|  2 | 李四   |    90 |
|  3 | 王五   |    85 |
|  4 | 赵六   |    80 |
|  5 | 哈哈   |    50 |
+----+--------+-------+
5 rows in set (0.00 sec)[root@localhost][db_test]> 

查询表中的 分数(score) 大于 80 分的学生

[root@localhost][db_test]> select * from tb_student where score > 80;
+----+--------+-------+
| id | name   | score |
+----+--------+-------+
|  1 | 张三   |    95 |
|  2 | 李四   |    90 |
|  3 | 王五   |    85 |
+----+--------+-------+
3 rows in set (0.00 sec)[root@localhost][db_test]> 

查询表中 名称(name) 是 赵六 的数据

[root@localhost][db_test]> select * from tb_student where name = '赵六';
+----+--------+-------+
| id | name   | score |
+----+--------+-------+
|  4 | 赵六   |    80 |
+----+--------+-------+
1 row in set (0.00 sec)[root@localhost][db_test]> 

查询表中 名称(name) 不等于 哈哈 的数据.

[root@localhost][db_test]> select * from tb_student where name != '哈哈';
+----+--------+-------+
| id | name   | score |
+----+--------+-------+
|  1 | 张三   |    95 |
|  2 | 李四   |    90 |
|  3 | 王五   |    85 |
|  4 | 赵六   |    80 |
+----+--------+-------+
4 rows in set (0.00 sec)[root@localhost][db_test]> 

查询表中 分数(score) 小于等于 60分 的学生数据

[root@localhost][db_test]> select * from tb_student where score <= 60;
+----+--------+-------+
| id | name   | score |
+----+--------+-------+
|  5 | 哈哈   |    50 |
+----+--------+-------+
1 row in set (0.00 sec)[root@localhost][db_test]> 

逻辑运算符

在这里插入图片描述

查询

查询满足 id 大于 3 并且 分数 大于等于 80 分的学生信息

[root@localhost][db_test]> select * from tb_student where id > 3 and score >= 80;
+----+--------+-------+
| id | name   | score |
+----+--------+-------+
|  4 | 赵六   |    80 |
+----+--------+-------+
1 row in set (0.00 sec)[root@localhost][db_test]> 

查询满足 id 大于 3 或者 分数大于等于 80 分的学生信息

[root@localhost][db_test]> select * from tb_student where id > 3 or score >= 80;
+----+--------+-------+
| id | name   | score |
+----+--------+-------+
|  1 | 张三   |    95 |
|  2 | 李四   |    90 |
|  3 | 王五   |    85 |
|  4 | 赵六   |    80 |
|  5 | 哈哈   |    50 |
+----+--------+-------+
5 rows in set (0.00 sec)[root@localhost][db_test]> 

查询名称(name) 不是 哈哈 的学生信息

[root@localhost][db_test]> select * from tb_student where not name = '哈哈';
+----+--------+-------+
| id | name   | score |
+----+--------+-------+
|  1 | 张三   |    95 |
|  2 | 李四   |    90 |
|  3 | 王五   |    85 |
|  4 | 赵六   |    80 |
+----+--------+-------+
4 rows in set (0.00 sec)[root@localhost][db_test]> 

上述查询SQL,等同于 如下:

[root@localhost][db_test]> select * from tb_student where name <> '哈哈';
+----+--------+-------+
| id | name   | score |
+----+--------+-------+
|  1 | 张三   |    95 |
|  2 | 李四   |    90 |
|  3 | 王五   |    85 |
|  4 | 赵六   |    80 |
+----+--------+-------+
4 rows in set (0.00 sec)[root@localhost][db_test]> 
http://www.dtcms.com/a/352490.html

相关文章:

  • 基于SpringBoot的演唱会网上订票系统的设计与实现(代码+数据库+LW)
  • 自由学习记录(89)
  • 一份兼容多端的HTML邮件模板实践与详解
  • 美妆品牌如何用 DAM 管理海量产品图片?
  • 开脑洞,末日降临,堡垒求生,ARMxy系列BL410能做什么?
  • vagrant怎么在宿主机管理虚拟机镜像box(先搁置)
  • 中国移动云电脑一体机-创维LB2004_瑞芯微RK3566_2G+32G_开ADB安装软件教程
  • 【自监督检测】HASSOD:Hierarchical Adaptive Self-Supervised Object Detection
  • 《基于 Spring Boot 的足球青训俱乐部管理后台系统设计与实现--文末获取源码》
  • wsl安装的系统更换路径
  • 【Modbus-TCP】linux为主机—PC为从机通信
  • 8.26 支持向量机
  • GD32和STM32的区别在哪里?
  • Python训练营打卡 DAY 48 随机函数与广播机制
  • 摩尔信使MThings V0.8.1更新要点
  • flume监控目录文件实战:三种 Source 方案对比与配置指南
  • vue新增用户密码框自动将当前用户的密码自动填充的问题
  • Windows server 2019安装wsl2
  • Python3.11升级到高版本-aioredis兼容问题
  • 洛谷: CF632D Longest Subsequence-普及+/提高
  • 下载python离线安装包,在无网络机器安装方法
  • DeepSeek用C编写的支持Zstandard 压缩的 ZIP 工具
  • 2020-2022年 CLES村庄、农户调查问卷、清理和审核报告相关数据
  • 【RAGFlow代码详解-25】HTTP 接口
  • VGG改进(5):基于Multi-Scale Attention的PyTorch实战
  • 解析xml文件并录入数据库
  • 给高斯DB写一个函数实现oracle中GROUPING_ID函数的功能
  • 分布式锁;Redlock
  • 【世纪龙科技】职业院校汽车职业体验中心建设方案
  • imx6ull-驱动开发篇43——I.MX6U 的 I2C 驱动分析