数据库 SQL常用语句

简介: 这篇文章是数据库SQL的常用语句指南,涵盖了查询格式、WHERE子句查询条件、多表连接查询、嵌套查询、字符匹配查询以及其他指令如排序、聚集函数、GROUP BY分组、EXIST子查询和外连接等知识点。

数据库 SQL常用语句

文章目录

  • 数据库 SQL常用语句
    • 一、前言
    • 二、相关知识点实用性介绍
      • 1、常用查询格式
      • 2、WHERE子句常用的查询条件
      • 3、多表连接查询
      • 4、嵌套查询
      • 5、字符匹配查询
      • 6、其他常用指令
        • 排序
        • 聚集函数
        • GROUP BY分组
        • EXIST 子查询
        • 外连接

一、前言

在做的时候有些不是很流畅,特意记录一下,该实验主要练习查询操作。

二、相关知识点实用性介绍

1、常用查询格式

SELECT 属性名
FROM 表名
WHERE 限制条件

2、WHERE子句常用的查询条件

查询条件 谓词
比较 \=,>,<,>=,<=,!=,<>,!>,!<; NOT加上述的比较运算符
确定范围 BETWEEN AND,NOT BETWEEN AND
确定集合 IN ,NOT IN
字符匹配 LIKE, NOT LIKE
空值 IS NULL,IS NOT NULL
多重条件 AND,OR,NOT
量词 EXISTS

简单栗子:

  • 比较:WHERE Sname=“风落”
  • 确定范围:WHERE Sage BETWEEN 18 AND 23
  • 确定集合:多用与嵌套查询,WHERE IN (SELECT Sname FROM SPJ WHERE Sage>18)
  • 字符匹配:查询字符串,如所有姓刘的学生。WHERE Sname LIKE “刘%”
    • %表示任意个数的任意字符、_ 表示一个任意字符 “杨_” 就表示第一个字是杨,第二位为其他字的两位字符串。
  • 空值:多用于提取空值或去掉:WHERE Sname IS NULL
  • 多重条件:这个也比较常见,将多个条件联动起来。比如一位21岁,名字是杨灏的男生。WHERE Sage=21 AND Sname=“杨灏” AND Smale=“男生”

3、多表连接查询

SELECT 属性名中的属性名可以来自不同的表
例子:

SELECT S.SNAME,P.PNAME,J.JNAME,SPJ.QTY
FROM SPJ,S,P,J
WHERE SPJ.PNO=P.PNO AND SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO;

多表连接的通俗解释:查询的属性名来自二个或二个以上的表。

4、嵌套查询

定义:一个SELECT-FROM-WHERE 语句被称为一个查询块,将一个查询块套在另一个查询快的WHERE字句或HAVING短语的条件中被称为嵌套查询。

SELECT DISTINCT SPJ.JNO
FROM S,SPJ
WHERE SPJ.JNO NOT IN (SELECT SPJ.JNO FROM S,SPJ WHERE S.CITY="天津" AND S.SNO=SPJ.SNO);

5、字符匹配查询

谓词 LIKE 可以用来进行字符串的匹配。

SELECT *
FROM Student
WHERE Sname LIKE "杨%";

6、其他常用指令

排序

用户可以用ORDER BY 子句对查询结果按照一个或多个属性列升序(ASC)或降序(DESC)排序,默认升序。

SELECT Sname,Grade
FROM Student
WHERE WHERE Sage>20
ORDER BY Grade DESC;
  • 按多个项排序
SELECT Sname,Grade
FROM Student
WHERE WHERE Sage>20
ORDER BY Grade DESC,Sage DESC;
聚集函数
  • COUNT(*)
  • SUM()
  • AVG()
  • MAX()
  • MIN()

注:功能如名字,SUM(Smoney)就是将钱都叠加起来。聚集函数里面放置的就是属性名,或只有一列的查询结果(嵌套查询)

GROUP BY分组

将查询结果按某一列或多列进行分组

  • 按一列分组
SELECT Color,COUNT(Snum)
FROM S
GROUP BY Color;
  • 按两列分组
SELECT Color,COUNT(Snum)
FROM S
GROUP BY Color,Money;
EXIST 子查询

Exists子查询就是用来判断某些条件是否满足(跨表),Exists是接在where之后,Exists返回的结果只有0和1

 SELECT * 
 FROM t_student
 WHERE EXISTS(SELECT * FROM t_TinKe WHERE t_student.id=t_TinKe .id );

将t_student中的每一行,如果满足(SELECT * FROM t_TinKe WHERE t_student.id=t_TinKe .id ) 则加入结果集合

最终返回所有在这个班的听课的学生信息

外连接
SELECT Student.*,Food.*
FROM Student
LEFT OUTER JOIN Food ON (Student.eat=Food.eat);
相关文章
|
9天前
|
SQL 人工智能 Linux
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
118 5
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
|
8天前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
|
8天前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
5月前
|
SQL 存储 关系型数据库
第二篇:关系型数据库的核心概念与 SQL 基础
本篇内容深入浅出地讲解了关系型数据库的核心概念与SQL基础,适合有一定计算机基础的学习者。文章涵盖数据库的基本操作(CRUD)、数据类型、表的创建与管理等内容,并通过实例解析SELECT、INSERT、UPDATE、DELETE等语句的用法。此外,还推荐了多种学习资源与实践建议,帮助读者巩固知识。学完后,你将掌握基础数据库操作,为后续高级学习铺平道路。
239 1
|
26天前
|
SQL Oracle 关系型数据库
Oracle数据库创建表空间和索引的SQL语法示例
以上SQL语法提供了一种标准方式去组织Oracle数据库内部结构,并且通过合理使用可以显著改善查询速度及整体性能。需要注意,在实际应用过程当中应该根据具体业务需求、系统资源状况以及预期目标去合理规划并调整参数设置以达到最佳效果。
92 8
|
2月前
|
SQL 人工智能 Java
用 LangChain4j+Ollama 打造 Text-to-SQL AI Agent,数据库想问就问
本文介绍了如何利用AI技术简化SQL查询操作,让不懂技术的用户也能轻松从数据库中获取信息。通过本地部署PostgreSQL数据库和Ollama模型,结合Java代码,实现将自然语言问题自动转换为SQL查询,并将结果以易懂的方式呈现。整个流程简单直观,适合初学者动手实践,同时也展示了AI在数据查询中的潜力与局限。
194 8
|
6月前
|
SQL 数据库 数据安全/隐私保护
数据库数据恢复——sql server数据库被加密的数据恢复案例
SQL server数据库数据故障: SQL server数据库被加密,无法使用。 数据库MDF、LDF、log日志文件名字被篡改。 数据库备份被加密,文件名字被篡改。
|
14天前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
|
4月前
|
SQL 关系型数据库 MySQL
Go语言数据库编程:使用 `database/sql` 与 MySQL/PostgreSQL
Go语言通过`database/sql`标准库提供统一数据库操作接口,支持MySQL、PostgreSQL等多种数据库。本文介绍了驱动安装、连接数据库、基本增删改查操作、预处理语句、事务处理及错误管理等内容,涵盖实际开发中常用的技巧与注意事项,适合快速掌握Go语言数据库编程基础。
286 62
|
3月前
|
SQL XML Java
配置Spring框架以连接SQL Server数据库
最后,需要集成Spring配置到应用中,这通常在 `main`方法或者Spring Boot的应用配置类中通过加载XML配置或使用注解来实现。
272 0

热门文章

最新文章