news 2026/4/18 13:51:47

SQL入门

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SQL入门

一、什么是数据库

数据库是按照数据结构来组织、存储和管理数据库的仓库。每个数据库都有一个活多个不同的API用于创建,访问,管理,搜索和复制所保存的数据。

二、术语

数据库:数据库是一些关联表的集合。

数据表:表是数据的矩阵。在一个数据库中表看起来像一个简单的电子表格。

列:一列包含了相同类型的数据。

行:一行是一组相关的数据。

冗余:存储俩倍数据,冗余降低了性能,但提高了数据的安全性。

主键:主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键查询数据。

外键:外键用于关联俩个表。

复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引

索引:使用索引可以迅速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。

参照完整性:参照的完整性要求关系中不允许引用不存在的实体。与实体完整性是关系模型必须满足的完整性约束条件,目的是保证数据的一致性。

MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格"的概念, 一个关系型数据库由一个或数个表格组成, 如图所示的一个表格:

SQL(Structured Query Language:结构化查询语言) 是用于管理关系数据库管理系统(RDBMS)。

SQL 通过一系列的语句和命令来执行数据定义、数据查询、数据操作和数据控制等功能,包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。

三、数据库连SQL基本操作

演示数据库

下面是选自 "Websites" 表的数据:

+----+--------------+---------------------------+-------+---------+
| id | name | url | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1 | Google | https://www.google.cm/ | 1 | USA |
| 2 | 淘宝 | https://www.taobao.com/ | 13 | CN |
| 3 | 菜鸟教程 | http://www.runoob.com/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 20 | CN |
| 5 | Facebook | https://www.facebook.com/ | 3 | USA |
+----+--------------+---------------------------+-------+---------+

1、SELECT

SELECT 语句用于从数据库中选取数据。

结果被存储在一个结果表中,称为结果集。

SELECT column1(字段名), column2, ...
FROM table_name(表名);

SELECT *(通配符,表示选择表中所有的列) FROM table_name;

2、SELECT DISTINCT

SELECT DISTINCT 语句用于返回唯一不同的值。

在表中,一个列可能会包含多个重复值,有时您也许希望仅仅列出不同(distinct)的值,也就是去掉 "XX" 列重复值。

DISTINCT 关键词用于返回唯一不同的值。

SELECT DISTINCT column1, column2, ...
FROM table_name;

3、WHERE

WHERE 子句用于提取那些满足指定条件的记录。

SELECT column1, column2, ...
FROM table_name
WHERE condition;

SELECT * FROM Websites WHERE country='CN';

4、AND & OR

AND & OR 运算符用于基于一个以上的条件对记录进行过滤。

如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。

如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。

SELECT * FROM Websites
WHERE country='CN'
AND alexa > 50;

也可以把 AND 和 OR 结合起来(使用圆括号来组成复杂的表达式)。

下面的 SQL 语句从 "Websites" 表中选取 alexa 排名大于 "15" 且国家为 "CN" 或 "USA" 的所有网站:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 6:25:21

AIS 韩国线下峰会圆满举办,韩国日本市场正式启动

2024 年 12 月 8 日,AIS 在韩国成功举办“AIS 2025全球数字经济论坛-首尔站”,来自韩国政商界代表、行业专家及多国社区领袖齐聚首尔,共同见证 AIS 在亚洲市场的全新进程。本次活动围绕“全球网络压力测试背景下的 AIS 技术韧性与市场潜力”展…

作者头像 李华
网站建设 2026/4/18 6:25:06

轻量级开源大模型GPT-OSS-20B详解:支持dify部署与ollama集成

轻量级开源大模型GPT-OSS-20B详解:支持Dify部署与Ollama集成 在AI应用快速渗透各行各业的今天,一个现实问题摆在开发者面前:如何在不依赖昂贵云服务的前提下,构建高性能、可定制且数据安全的智能系统?主流闭源大模型虽…

作者头像 李华
网站建设 2026/4/18 6:26:20

从零开始搭建Qwen3-14B推理服务的Docker配置指南

从零开始搭建Qwen3-14B推理服务的Docker配置指南 在企业级AI应用日益普及的今天,如何将大语言模型稳定、高效地部署到生产环境,已成为技术团队面临的核心挑战之一。许多团队都曾经历过“本地能跑,上线就崩”的尴尬局面——开发机上流畅运行的…

作者头像 李华
网站建设 2026/4/18 6:24:10

C# params使用

在 C# 中,params 关键字用于定义**可变参数列表(variable-length argument list)**的方法参数。它允许调用者传入 0 个或多个指定类型的参数,而无需显式创建数组。 你提到的 params Type[] interfaceTypes 是一个典型的使用场景&a…

作者头像 李华
网站建设 2026/4/18 6:27:53

Arbess从基础到实践(13) - 集成Gitee+SonarQube实现Node.js项目自动化部署

Arbess 是一款开源免费的 CI/CD 工具,支持免费私有化部署,一键安装零配置。本文将详细介绍如何安装使用ArbessGiteeSonarQube实现Node.js项目代码扫描并自动化部署。 1、Gitee 安装与配置 本章节将介绍如何使用创建Gitee个人密匙,提供给Arb…

作者头像 李华
网站建设 2026/4/18 10:58:17

叮当猫相关图片

from turtle import * def gotos(x, y):penup()goto(x, y)pendown() # 眼睛 def eyes():tracer(False)a 2.5for i in range(120):if 0 < i < 30 or 60 < i < 90:a - 0.05lt(3)fd(a)else:a 0.05lt(3)fd(a)tracer(True) # 胡须 def beard():gotos(-37, 135)seth(16…

作者头像 李华