`
zhuozm348
  • 浏览: 827 次
社区版块
存档分类
最新评论

sql语法

 
阅读更多

一、结构化查询语言(Structured Query Language)简称SQL

二、sql大小写不敏感

三、sql 分为两个部分数据操作语言(DML)和数据定义语言(DDL)

  1. DML包含以下主要的指令select、update、delete、insert into
  2. DDL包含以下只要指令
  • create database—创建数据库
  • alter database—修改数据库
  • create table
  • alter table
  • drop table—删除表
  • creat index—创建索引
  • drop index —删除索引 
四、DML
  1. select语法
    • SELECT 列名称 FROM 表名称 //由指定表返回指定列
    • SELECT * FROM 表名称// *由指定表返回所有列
    • SELECT DISTINCT 列名称 FROM 表名称 //只返回不同的列eg:存在两行一样的数据则只显示一次
  2. where语法   
  • SELECT 列名称 FROM 表名称 WHERE 列 运算符 值 //运用where来筛选需要的行, 其中运算符除了基本的大于小于比较之外还有between(在某个范围内)、like(匹配)eg:SELECT * FROM Persons WHERE City='Beijing'
  • 注意了:引号的使用单引号表示文本值,如果数值不要使用引号and和or配合where使用
  • eg:SELECT * FROM Persons WHERE FirstName='Thomas' AND LastName='Carter'
    3、order by
  • SELECT * FROM 表名称 order by 列名称(例如a)[,列名称 b]//将结果按照a列顺序进行排序【,然后再按b排序】
  • 在列名称后面加上空格再加desc表示逆序,如果是空格加asc顺序

     4、insert into

  • INSERT INTO 表名称 VALUES (值1, 值2,....)
  • INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)

    5、update

  • UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

    6、delete

  • DELETE FROM 表名称 WHERE 列名称 = 值
  • DELETE FROM table_name//删除所有行
     7、top   使得结果集只返回前面几条记录
  • top并不被所有的数据库支持但是可以使用类似的功能
  • sql server 可以写成SELECT TOP number|percent column_name(s)     FROM table_name
SELECT TOP 50 PERCENT * FROM Persons
 
  • mysql可以写成SELECT column_name(s)   FROM table_name   LIMIT number
    8、like操作符
SELECT * FROM Persons//%表示通配符它把N右边的看成是不确定的因此可以匹配到Nddd,
WHERE City LIKE 'N%'//N132之类的当然也可以放前面表示左边不确定%N,或%N%
 9、通配符
主要有以下几种
  • % 表示替代一个或多个字符
  • _ 仅替代一个字符
  • [charlist] 字符列表中任何单一字符
  • [^charlist] 除了字符列表中的任意单一字符 用[!charlist]表示也行
举例:
SELECT * FROM Persons
WHERE City LIKE '[ALN]%'
 10、IN操作符
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...)
 11、between  A and B
ELECT column_name(s)
FROM table_name
WHERE column_name
BETWEEN value1 AND value2
 注意了:根据数据库不同是否包括边界具有不确定性
12、AS 别名
SELECT column_name(s)
FROM table_name
AS alias_name

或者

SELECT column_name AS alias_name
FROM table_name
 例子
SELECT po.OrderID, p.LastName, p.FirstName
FROM Persons AS p, Product_Orders AS po
WHERE p.LastName='Adams' AND p.FirstName='John'
 使用别名可以方便我们阅读
13、join 和 key
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons, Orders
WHERE Persons.Id_P = Orders.Id_P 
 拼接了两个表中相联系的值 这个功能也能使用join来实现
insert join 和 join 是等价的
SELECT column_name(s)
FROM table_name1 LEFT JOIN table_name2 
ON table_name1.column_name=table_name2.column_name
 有
  • join   //内连接
  • left join //左外连接
  • right join //右外连接 :以右边表为主右边每一项都显示,左边不匹配项不显示
  • full join  //全连接 :不匹配项显示为空

14、union

UNION 操作符用于合并两个或多个 SELECT 语句的结果集。

注意,1、UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。

          2、union默认选取列中不同的值,也就是叠加的时候完全一样的记录不显示,如果要显示 使用union all 来替代union

  •  
    SELECT column_name(s) FROM table_name1
    UNION
    SELECT column_name(s) FROM table_name2
     

15、select into 用于制作备份文件

SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。常用于创建表的备份复件或者用于对记录进行存档。

 
SELECT *
INTO new_table_name [IN externaldatabase] 
FROM old_tablename
//也可以选择几个列插入
 五 、DDL
  • creat database database_name
  • creat table
  1. CREATE TABLE 表名称
    (
    列名称1 数据类型,
    列名称2 数据类型,
    列名称3 数据类型,
    ....
    )
     
  • SQL约束
  1. NOT NULL //不为空唯一值
  2. UNIQUE //只能有唯一 一个值类似id属性;
  3. PRIMARY KEY //自带unique,not null但是每个表有且只有一个,而unique可以约束多个。
  4. FOREIGN KEY //将A表的某一列指向B表的某一列,要插入A表的那一列时插入的值必须是b表那一列中确实存在着的值,可以防止非法数据插入
    ALTER TABLE Orders
    ADD FOREIGN KEY (Id_P)
    REFERENCES Persons(Id_P)
ALTER TABLE Orders
DROP FOREIGN KEY fk_PerOrders
  1. CHECK
  2. DEFAULT
分享到:
评论

相关推荐

    sqlserver sql语法大全

    ### SQLServer SQL语法大全 #### 创建数据库 在SQL Server中创建数据库是一项基本操作,通过`CREATE DATABASE`命令来实现。创建数据库时可以指定文件和日志文件的位置、初始大小及增长方式等参数。 **语法示例:**...

    java检查sql语法是否正确

    在Java编程中,检查SQL语法是否正确是一项重要的任务,它能确保我们的数据库操作代码不会因为语法错误而引发异常。为了实现这一目标,开发者通常会利用Java的JDBC(Java Database Connectivity)API或者其他第三方库...

    SqlParser C++实现的SQL语法解释器

    SqlParser是一款基于C++实现的SQL语法解释器,它的主要任务是解析SQL语句,将其转化为计算机可理解的形式,从而能够执行相应的数据库操作。在数据库系统中,SQL(Structured Query Language)是用于管理关系数据库的...

    SQL 语法 SQL 总结 SQL教程

    SQL 语法 SQL select SQL distinct SQL where SQL AND & OR SQL Order By SQL insert SQL update SQL delete SQL 高级 SQL Top SQL Like SQL 通配符 SQL In SQL Between SQL Aliases SQL Join SQL ...

    ORACLE和SQL语法区别归纳

    ### ORACLE和SQL语法区别归纳 #### 概述 本文旨在为初学者提供关于Oracle与SQL Server在数据类型、函数及日期操作等方面的语法差异总结,帮助读者更好地理解这两种数据库管理系统的特点,并能够在实际应用中灵活...

    Hive_SQL语法大全

    Hive_Sql语法详述,平时工作中遇到的问题,用于Hadoop平台的数据挖掘。

    SQL语法和帮助手册 API

    此“SQL语法和帮助手册 API”是一个非常实用的资源,尤其适合初学者和开发者在学习和工作中参考。 1. **SQL基础** - **数据查询**:SQL中的SELECT语句是最基本的查询工具,允许用户从一个或多个表中选择指定的数据...

    SQL语法手册.pdf

    SQL 语法手册 SQL 语法手册是数据库管理系统中使用的一种标准语言,用于管理、操作和访问数据库中的数据。本手册将详细介绍 SQL 语法的基本结构和使用方法。 一、SELECT 语句 SELECT 语句是 SQL 语法中最基本的一...

    SQL语法教学课件

    适合教学使用的SQL语法课件,内容相对精炼。

    oracle SQL语法大全

    Oracle SQL语法大全 Oracle SQL语法大全是关系数据库标准语言SQL的详细介绍,涵盖了SQL的基础知识、语法结构、数据类型、查询语句、操作符的使用等方面的内容。 SQL基础知识 SQL(Structured Query Language)是...

    常用SQL语法技巧常用SQL语法技巧常用SQL语法技巧

    常用SQL语法技巧常用SQL语法技巧常用SQL语法技巧常用SQL语法技巧常用SQL语法技巧

    Oracle与SQLServer的SQL语法差异

    Oracle与SQLServer的SQL语法差异,用简单易懂的语言和实例对Oracle和Sql Server语法之间的差异进行了对比分析,更加适用于入门的人

    sql语法大全中文版

    SQL 语法大全中文版 SQL 语法大全中文版是数据库管理系统中使用的标准语言,用于管理和操作数据库中的数据。本书将从基础知识开始,逐步深入到中级和高级 SQL,涵盖了 SQL 的所有方面。 SQL 基础 SQL 语言被...

    SQL语法大全中文版SQL语法大全中文版

    本资源“SQL语法大全中文版”旨在为学习者提供全面、详尽的SQL语法指南。下面将详细阐述SQL的一些核心概念和主要语法点。 1. 数据库基本操作: - **创建数据库**:`CREATE DATABASE 数据库名;` - **删除数据库**...

    人大金仓 KingbaseES V8 手册 及 sql语法手册

    本手册和SQL语法手册是学习和操作KingbaseES V8的重要参考资料。 在KingbaseES V8中,用户可以接触到以下几个核心知识点: 1. **数据库管理系统基础**:理解数据库管理系统的概念,包括数据存储、数据查询、事务...

    ms sql语法学习大全

    【标题】"ms sql语法学习大全"涉及到的是微软的SQL Server数据库管理系统中的核心语法和操作。SQL Server(简称MS SQL)是广泛应用于企业级数据库管理的重要工具,它提供了丰富的SQL语言来实现数据的存储、查询、...

    sqlite 支持的 sql 语法详解

    它支持大部分标准SQL语法,但也有自己的一些特性和限制。以下是对SQLite支持的SQL语法的详细讲解,同时也将指出一些SQLite不支持的SQL语句。 一、创建与管理数据库 在SQLite中,可以使用`CREATE DATABASE`命令创建...

    T-SQL语法详解

    T-SQL语法详解 在SQL Server中,T-SQL(Transact-SQL)是一种扩展了标准SQL的编程语言,主要用于管理和操作数据库。本篇将详细阐述T-SQL中与数据库存储结构相关的知识点。 1. 数据库存储结构 数据库在SQL Server...

Global site tag (gtag.js) - Google Analytics