SQL 语法

SQL 语法规则


  • SQL语句总是以关键字开始,如SELECT、INSERT、UPDATE、DELETE、DROP、CREATE。
  • SQL语句以分号结尾。
  • SQL不区分大小写,意味着update与UPDATE相同。

数据库表


 数据库通常包含一个或多个表。每个表都用一个名称标识(例如,"Customers"或"Orders")。该表包含带有数据(行)的记录。
 在本教程中,我们将使用著名的Northwind示例数据库(包括MSAccess和MSSQLServer)。

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

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

 上面的表包含五条记录(每一条对应一个客户)和七个列(CustomerID、CustomerName、ContactName、Address、City、PostalCode 和 Country)。

SQL 语句


 您需要在数据库上执行的大部分操作都是使用SQL语句完成的。

 以下SQL语句选择“Customers”表中的所有记录:

实例

SELECT * FROM Customers;

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

请记住...


  • SQL 对大小写不敏感:SELECT 与 select 是相同的。
  • 在本教程中,我们将以大写形式编写所有SQL关键字。

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 - 删除索引

SELECT语句

 句法:

SELECT column_name(s) FROM table_name

SELECT语句和WHERE子句

 句法:

SELECT [*] FROM [TableName] WHERE [condition1]

SELECT语句与WHERE和/或子句

 句法:

SELECT [*] FROM [TableName] WHERE [condition1] [AND [OR]] [condition2]...

SELECT语句与ORDER BY

 句法:

SELECT column_name()
FROM table_name
ORDER BY column_name() ASC or DESC

SELECT  DISTINCT(区分)子句

 句法:

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

SELECT  IN子句

 句法:

SELECT column1, column2....columnN
FROM   table_name
WHERE  column_name IN (val-1, val-2,...val-N);

SELECT LIKE (类)子句

 句法:

SELECT column1, column2....columnN
FROM   table_name
WHERE  column_name LIKE { PATTERN };

SELECT  COUNT(计数)子句

 句法:

SELECT COUNT(column_name)
FROM   table_name
WHERE  CONDITION;

SELECT与HAVING子句

 句法:

SELECT SUM(column_name)
FROM   table_name
WHERE  CONDITION
GROUP BY column_name
HAVING (arithematic function condition);

INSERT INTO语句

 句法:

INSERT INTO table_name (column, column1, column2, column3, ...)
VALUES (value, value1, value2, value3 ...)

UPDATE语句

 句法:

UPDATE table_name
SET column=value, column1=value1,...
WHERE someColumn=someValue

DELETE语句

 句法:

DELETE FROM tableName
WHERE someColumn = someValue

CREATE 语句

 句法:

CREATE TABLE table_name(
column1 datatype,
column2 datatype,
column3 datatype,
.....
columnN datatype,
PRIMARY KEY( one or more columns )
);

DROP 语句

 句法:

DROP TABLE table_name;

CREATE INDEX语句

 句法:

CREATE UNIQUE INDEX index_name
ON table_name ( column1, column2,...columnN);

DROP INDEX语句

 句法:

ALTER TABLE table_name
DROP INDEX index_name;

DESC语句

 句法:

DESC table_name;

TRUNCATE 截断表语句

 句法:

TRUNCATE TABLE table_name;

ALTER TABLE语句

 句法:

ALTER TABLE table_name {ADD|DROP|MODIFY} column_name {data_ype};

ALTER TABLE语句(对表名重命名)

 句法:

ALTER TABLE table_name RENAME TO new_table_name;

Use语句 

 句法:

USE database_name;

COMMIT语句

 句法:

COMMIT;

ROLLBACK语句

 句法:

ROLLBACK;

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

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

相关文章

【ELK使用指南 2】常用的 Logstash filter 插件详解(附应用实例)

Logstash filter 一、logstash filter过滤插件的常用模块简介二、grok 正则捕获插件2.1 grok插件的作用2.2 内置正则表达式2.3 自定义正则表达式 三、mutate 数据修改插件3.1 mutate插件的作用3.2 常用的配置选项3.3 mutate插件应用实例 四、multiline 多行合并插件4.1 multili…

Mac上安装和配置Git

在Mac上安装和配置Git是一个相对简单的过程,以下是一份详细的步骤指南。 首先,你需要确保你的Mac已经安装了Homebrew(如果还没有安装,可以通过以下命令安装:),Homebrew是一个包管理器&#xff…

Unity之ShaderGraph如何实现马赛克效果

前言 今天我们来实现一个马赛克的效果 如下所示: 关键节点 Posterize:色调分离节点 图像的色调分离或色调分离需要将色调的连续渐变转换为色调较少的几个区域,并从一种色调突然改变为另一种色调。 原理 原理就是通过色调分离节点&…

thinkphp队列的使用?

1.安装队列依赖 由于框架版本原因可以选择适合的版本 composer require topthink/think-queue 由于我是tp框架5.1的,所以选择了think-queue 1.1.6 composer require topthink/think-queue 1.1.6 判断安装成功 php think queue:work -h image.png 2.配置文件…

yolov5多个框重叠问题

NMS(Non-Maximum Suppression,非极大值抑制)是一种在计算机视觉和目标检测领域常用的技术。它通常用于在图像或视频中找出物体或目标的位置,并剔除重叠的边界框,以确保最终的检测结果准确且不重叠。 会出现多个框重叠…

阿里云-AnalyticDB【分析型数据库】总结介绍

一、背景 随着企业IT和互联网系统的发展,产生了越来越多的数据。数据量的积累带来了质的飞跃,使得数据应用从业务系统的一部分演变得愈发独立。物流、交通、新零售等越来越多的行业需要通过OLAP做到精细化运营,从而调控生产规则、运营效率、企…

互联网Java工程师面试题·Java 总结篇·第十弹

目录 82、JDBC 能否处理 Blob 和 Clob? 83、简述正则表达式及其用途。 84、Java 中是如何支持正则表达式操作的? 85、获得一个类的类对象有哪些方式? 86、如何通过反射创建对象? 87、如何通过反射获取和设置对象私有字段的值…

Unity之ShaderGraph如何实现无贴图水球效果

前言 我们今天来实现一个无贴图水球效果,如下图所示: 主要节点 UVSplit:可以获得UV在RGB三个颜色分别的分量 Remap:重映射节点 基于输入 In 值在输入In Min Max的 x 和 y 分量之间的线性插值,返回输入Out Min Max…

【发布】Photoshop ICO 文件格式插件 3.0

备注:本文原文首发于博客园: https://www.cnblogs.com/hoodlum1980/p/17766287.html 【简介】 Photoshop ICO 插件是为 Photoshop 开发的功能扩展插件,使得 Photoshop 可以直接读写 ICO 格式文件。由于 Photoshop 具有强大的像素位图编辑功…

android studio打开flutter项目报红

一、android studio打开flutter项目报红,如下图: 二、解决方法: 2.1 在这个build.gradle添加以下代码,如图: 2.2 在build.gradle最顶部添加如下代码: def localProperties new Properties() def localPr…

node 第八天 使用前后端不分离的方式实现cookie登录验证

实现cookie登录, 第一次登录成功后, cookie由服务端设置并保存在客户端, 后续访问在cookie过期前 (过期时间由后端设置) 将不需要登录cookie出现的背景是 HTTP是无连接的,无状态的, 半双工(http2.0以下), 所以需要一个媒介存在http中, 服务端可以操作, 客户端也可以…

使用Gitlab构建简单流水线CI/CD

什么是Gitlab Gitlab实质上是一套DevOps工具 目前看起来,Gitlab属于是内嵌了一套CI/CD的框架,并且可以提供软件开发中的版本管理、项目管理等等其他功能。 这里需要辨别一下Gitlab和Github Gitee的区别。 GIthub大家都很熟悉了,一般大家都会…

Mac苹果电脑开不了机怎么办,该怎么修复

台式机Mac或MacBook无法打开,或者可能无法通过Apple图标启动?不用担心,虽然会让人烦躁不安,但通常是可以修复的。 以下就是重新启动Mac所需的所有步骤。只需按顺序进行操作即可,除非操作系统更新失败后Mac无法启动。在…

【已解决】java的gradle项目报错org.gradle .api.plugins .MavenPlugin

我的java的gradle项目经常报错org.gradle .api.plugins .MavenPlugin。报错这个问题是因为依赖起冲突了,我在网上试了很多方法都没有效果,折让小编我很是苦恼,不过还好到最后问题还是解决了。 首先要知道你的项目所使用的gradle版本&#xf…

ES6 Proxy和Reflect

1.Proxy是什么? Proxy 对象用于创建一个对象的代理,从而实现基本操作的拦截和自定义(如属性查找、赋值、枚举、函数调用等)。属于“元编程”,即对编程语言进行编程。 如对对象a进行拦截就 let p new Proxy(obj,hand…

day38

今日内容概要 进程和线程的比较 GIL全局解释器锁(重要理论) 互斥锁 线程队列(线程里使用队列) 进程池和线程池的用法 协程理论 如何使用协程 基于协程的高并发城程序 进程和线程比较 1.进程的开销比线程的开销大很多 2.进程之间的数据是隔离的,但是&#x…

LeetCode 799. 香槟塔【数组,模拟,简单线性DP】1855

本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章…

货物摆放(蓝桥杯)

货物摆放 题目描述 小蓝有一个超大的仓库,可以摆放很多货物。 现在,小蓝有 n 箱货物要摆放在仓库,每箱货物都是规则的正方体。小蓝规定了长、宽、高三个互相垂直的方向,每箱货物的边都必须严格平行于长、宽、高。 小蓝希望所有的…

jdk 加密 aes jar包解决

JDK1.8.0_151的无限制强度加密策略文件变动 JDK1.8.0_151无需去官网下载 local_policy.jar US_export_policy.jar这个jar包,只需要修改Java\jdk1.8.0_151\jre\lib\security这目录下的java.security文件配置即可。 随着越来越多的第三方工具只支持 JDK8&#xff0c…

开源OA协同办公系统,集成Flowable流程引擎 可拖拽创建个性表单

源码下载:https://download.csdn.net/download/m0_66047725/88403340 源码下载2: 关注我留言 开源OA协同办公系统,集成Flowable流程引擎 可拖拽创建个性表单。基于RuoYi-VUE版本开发。 1、使用RuoYi-Vue的基础上开发。 2、集成flowable&a…