SQL 菜鸟教程

第一节:SQL 语法

数据库表

一个数据库通常包含一个或多个表。每个表有一个名字标识(例如:"Websites"),表包含带有数据的记录(行)。

在本教程中,我们在 MySQL 的 RUNOOB 数据库中创建了 Websites 表,用于存储网站记录。

我们可以通过以下命令查看 "Websites" 表的数据:

mysql> use RUNOOB;
Database changed

mysql> set names utf8;
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT * FROM 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 |
±—±-------------±--------------------------±------±--------+
5 rows in set (0.01 sec)

解析

  • use RUNOOB; 命令用于选择数据库。
  • set names utf8; 命令用于设置使用的字符集。
  • SELECT * FROM Websites; 读取数据表的信息。
  • 上面的表包含五条记录(每一条对应一个网站信息)和5个列(id、name、url、alexa 和country)。

SQL 语句

您需要在数据库上执行的大部分工作都由 SQL 语句完成。

下面的 SQL 语句从 "Websites" 表中选取所有记录:

实例

SELECT * FROM Websites;

在本教程中,我们将为您讲解各种不同的 SQL 语句。


请记住...

  • SQL 对大小写不敏感:SELECT 与 select 是相同的。

SQL 语句后面的分号?

某些数据库系统要求在每条 SQL 语句的末端使用分号。

分号是在数据库系统中分隔每条 SQL 语句的标准方法,这样就可以在对服务器的相同请求中执行一条以上的 SQL 语句。

在本教程中,我们将在每条 SQL 语句的末端使用分号。


一些最重要的 SQL 命令

  • SELECT - 从数据库中提取数据
  • UPDATE - 更新数据库中的数据
  • DELETE - 从数据库中删除数据
  • INSERT INTO - 向数据库中插入新数据
  • CREATE DATABASE - 创建新数据库
  • ALTER DATABASE - 修改数据库
  • CREATE TABLE - 创建新表
  • ALTER TABLE - 变更(改变)数据库表
  • DROP TABLE - 删除表
  • CREATE INDEX - 创建索引(搜索键)
  • DROP INDEX - 删除索引
		</div>

第二小节:SQL SELECT 语句

		<h1>SQL <span class="color_h1">SELECT</span> 语句</h1>

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


SQL SELECT 语句

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

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

SQL SELECT 语法

SELECT column_name,column_name
FROM table_name;

SELECT * FROM table_name;


演示数据库

在本教程中,我们将使用 RUNOOB 样本数据库。

下面是选自 "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     |
+----+--------------+---------------------------+-------+---------+

SELECT Column 实例

下面的 SQL 语句从 "Websites" 表中选取 "name" 和 "country" 列:

实例

SELECT name,country FROM Websites;

输出结果为:


SELECT * 实例

下面的 SQL 语句从 "Websites" 表中选取所有列:

实例

SELECT * FROM Websites;

输出结果为:


结果集中的导航

大多数数据库软件系统都允许使用编程函数在结果集中进行导航,比如:Move-To-First-Record、Get-Record-Content、Move-To-Next-Record 等等。

类似这些编程函数不在本教程讲解之列。如需学习通过函数调用访问数据的知识,请访问我们的 ADO 教程 或者 PHP 教程。

		</div>

第三小节:SQL SELECT DISTINCT 语句

		<h1>SQL <span class="color_h1">SELECT DISTINCT</span> 语句</h1>

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


SQL SELECT DISTINCT 语句

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

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

SQL SELECT DISTINCT 语法

SELECT DISTINCT column_name,column_name
FROM table_name;


在本教程中,我们将使用 RUNOOB 样本数据库。

下面是选自 "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     |
+----+--------------+---------------------------+-------+---------+


SELECT DISTINCT 实例

下面的 SQL 语句仅从 "Websites" 表的 "country" 列中选取唯一不同的值,也就是去掉 "country" 列重复值:

实例

SELECT DISTINCT country FROM Websites;

输出结果:

		</div>

第四小节:SQL WHERE 子句

		<h1>SQL <span class="color_h1">WHERE</span> 子句</h1>

WHERE 子句用于过滤记录。


SQL WHERE 子句

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

SQL WHERE 语法

SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;


演示数据库

在本教程中,我们将使用 RUNOOB 样本数据库。

下面是选自 "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     |
+----+--------------+---------------------------+-------+---------+


WHERE 子句实例

下面的 SQL 语句从 "Websites" 表中选取国家为 "CN" 的所有网站:

实例

SELECT * FROM Websites WHERE country='CN';

执行输出结果:



文本字段 vs. 数值字段

SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。

在上个实例中 'CN' 文本字段使用了单引号。

如果是数值字段,请不要使用引号。

实例

SELECT * FROM Websites WHERE id=1;

执行输出结果:



WHERE 子句中的运算符

下面的运算符可以在 WHERE 子句中使用:

<td>等于</td>
运算符描述
=
<> 不等于。 注释:在 SQL 的一些版本中,该操作符可被写成 != > 大于 < 小于 >= 大于等于 <= 小于等于 BETWEEN 在某个范围内 LIKE
<td>搜索某种模式</td>
IN 指定针对某个列的多个可能值
		</div>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/480818.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

领域应用 | 深度学习在知识图谱构建中的应用

本文转载自公众号&#xff1a;阿里技术。深度学习模型介绍DeepDive系统在数据处理阶段很大程度上依赖于NLP工具&#xff0c;如果NLP的过程中存在错误&#xff0c;这些错误将会在后续的标注和学习步骤中被不断传播放大&#xff0c;影响最终的关系抽取效果。为了避免这种传播和影…

阿里P8架构师谈:Quartz调度框架详解、运用场景、与集群部署实践

以下将分别从Quartz架构简介、集群部署实践、Quartz监控、集群原理分析详解Quartz任务调度框架。 Quartz简介 Quartz是Java领域最著名的开源任务调度工具&#xff0c;是一个任务调度框架&#xff0c;通过触发器设置作业的定时运行规则&#xff0c;来执行定时任务。其中quartz集…

Bert在CV领域的应用

一只小狐狸带你解锁NLP/ML/DL秘籍老板老板&#xff0c;听说BERT是个瞎子此话怎讲&#xff1f;它能理解语言&#xff0c;但是理解不了小夕的自拍&#xff01;video-BERT了解一下喵喵喵&#xff1f;AI的三大核心板块&#xff08;CV/Speech/NLP&#xff09;近几年都相继取得了非常…

CRISP-DM:数据挖掘标准流程

CRISP-DM&#xff1a;数据挖掘标准流程 框架 相关信息 https://blog.csdn.net/qq_36387683/article/details/82932680 https://blog.csdn.net/hadoopdevelop/article/details/79282832

训练大型神经网络方法总结

一只小狐狸带你解锁 炼丹术&NLP 秘籍前阵子微软开源了DeepSpeed训练框架&#xff0c;从测试效果来看有10倍的速度提升&#xff0c;而且对内存进行了各种优化&#xff0c;最大可以训练100B(illion)参数的模型。同时发布了这个框架训练出的17B模型 Turing-NLG&#xff0c;处于…

从Java程序员进阶架构师,必看的书单推荐!

算法与数据结构&#xff1a; 数据结构&#xff08;严蔚敏&#xff09; java数据结构和算法&#xff08;美&#xff1a;拉佛&#xff09; 算法导论 大话数据结构 剑指Offer 程序员面试金典 编程珠玑 编程之美 程序员笔试面试最优解 数据结构与算法经典问题解析&#xf…

论文浅尝 | 基于Freebase的问答研究

本文转载自公众号&#xff1a;PaperWeekly。 本期的论文笔记来自 PaperWeekly 社区用户 britin。本文给出了一种 end-to-end 的系统来自动将 NL 问题转换成 SPARQL 查询语言。作者综合了实体识别以及距离监督和 learning-to-rank 技术&#xff0c;使得 QA 系统的精度提高了不少…

机器学习中的特征建模(特征工程)和算法选型建模 - 以暴力破解识别为例

catalogue 1. 特征工程是什么&#xff1f;有什么作用&#xff1f; 2. 特征获取方案 - 如何获取这些特征&#xff1f; 3. 特征观察 - 运用各种统计工具、图标等工具帮助我们从直观和精确层面认识特征中的概率分布 4. 特征处理 - 特征清洗 5. 特征护理 - 特征预处理 6. 特征处理 …

NLP数据增强方法总结:EDA、BT、MixMatch、UDA

本文转载自公众号“夕小瑶的卖萌屋”&#xff0c;专业带逛互联网算法圈的神操作 -----》我是传送门 关注后&#xff0c;回复以下口令&#xff1a; 回复【789】 &#xff1a;领取深度学习全栈手册&#xff08;含NLP、CV海量综述、必刷论文解读&#xff09; 回复【入群】&#xf…

史上最全java架构师技能图谱(上)

java架构师最全技能图谱上篇&#xff0c;包含&#xff1a;数结构算法、java进阶、web开发、框架与工具四大技能图谱。 下篇将包含大数据以及性能、设计模式、UML、中间件、分布式集群、负载均衡、通讯协议、架构设计等技术图谱等章节 本文作者&#xff0c;陈睿 优知学院创始人…

王仲远 | 基于概念知识图谱的短文本理解

本文转载自公众号&#xff1a;大数据创新学习中心。3月10日&#xff0c;美团点评AI Lab NLP负责人王仲远博士&#xff0c;给大家进行了题为“基于概念化的短文本理解&#xff08;Conceptualization for Short Text Understanding&#xff09;”的报告。王博士的这次报告主要分为…

出行大数据,滴滴发布400城数据可视化分析

转 一&#xff1a;出行大数据&#xff0c;滴滴发布400城数据可视化分析 2018年01月04日 00:00:00 https://blog.csdn.net/zw0Pi8G5C1x/article/details/78976493 二&#xff1a;滴滴背后的大数据应用 前言&#xff1a;这是一篇大数据应用文章&#xff0c;不涉及高深技术&#…

拒绝跟风,谈谈几种算法岗的区别和体验

这是一份小夕写给【准】算法工程师的手册和建议&#xff0c; 大概是因为马上要开始秋招提前批了&#xff0c;小夕在知乎和微信后台收到了不少小伙伴的岗位/团队选择的求助。于是小夕这里写一篇扫盲贴&#xff0c;给即将毕业的师弟师妹们提供一个参考&#xff08;后面再有师弟师…

阿里P8架构师谈:分布式、集群、负载均衡、分布式数据一致性的区别与关联

服务器集群&#xff1a; 1.集群概念 集群就是一组相互独立的计算机&#xff0c;通过高速的网络组成一个计算机系统。服务器集群就是指将很多服务器集中起来一起进行同一种服务&#xff0c;在客户端看来就像是只有一个服务器。 2.集群的特点和优势 1&#xff09;高性能 比如…

论文浅尝 | Know-Evolve: Deep Temporal Reasoning for Dynamic KG

论文链接&#xff1a;https://arxiv.org/abs/1705.05742对于事件数据&#xff0c;需要动态更新的知识图谱来保存知识图谱中关系的时许信息。本文提出了 Know-Evolve 这种基于神经网络的动态知识图谱来学习实体在不同时刻的表示。在动态知识图谱中&#xff0c;事件由四元组表示&…

阿里P8架构师谈:Docker容器的原理、特征、基本架构、与应用场景

什么是容器&#xff1f; 一句话概括容器&#xff1a;容器就是将软件打包成标准化单元&#xff0c;以用于开发、交付和部署。 容器镜像是轻量的、可执行的独立软件包 &#xff0c;包含软件运行所需的所有内容&#xff1a;代码、运行时环境、系统工具、系统库和设置。 容器化软…

中国电网招聘 计算机岗位

1.解密2018国家电网校园招聘&#xff0c;院校、专业、待遇盲区统统扫除&#xff01; 2018国家电网校园招聘国家电网作为国内乃至世界知名的企业集团&#xff0c;是令无数求职者心仪的工作单位。那么如何才能进国家电网工作呢&#xff1f;国家电网的待遇究竟有传说中的那么好吗&…

系统设计:github上学习如何设计大型系统的项目

https://github.com/donnemartin/system-design-primer/blob/master/README-zh-Hans.md 系统设计是一个很宽泛的话题。在互联网上&#xff0c;关于系统设计原则的资源也是多如牛毛。这个仓库就是这些资源的组织收集&#xff0c;它可以帮助你学习如何构建可扩展的系统。