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

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
分享到:
评论

相关推荐

    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 ...

    sqlserver sql语法大全

    sql语法大全 基于sqlserver数据库

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

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

    SQL语法手册SQL语法手册

    SQL语法手册 Select 用途 从指定表中取出指定的列的数据 语法:SELECT column_name(s) FROM table_name 解释: 从数据库中选取资料列,并允许从一或多个资料表中,选取一或多个资料列或资料行。SELECT 陈述式的...

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

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

    Hive_SQL语法大全

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

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

    SqlParser C++实现的SQL语法解释器,忘了在哪找到的,方便大家学习,直接贴上来了

    SQL语法教学课件

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

    ORACLE和SQL语法区别归纳

    ORACLE和SQL语法区别归纳 对于新手有帮助

    Oracle与SQLServer的SQL语法差异

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

    SQL语法教材.pdf

    SQL语法教材.pdf SQL 语法说明 一、 利用 SELECT 指令选取数据 1. SELECT 语法基本架构 2. 选取全部资料 3. 指定字段 4. 选取不重复的数据 5. 衍生字段 6. 数据排序 7. 资料分组 8. 加上选择条件 9. 使用万用字符 ...

    SQL语法参考手册,简单易用

    SQL语法参考手册,TXT文档 DB2 提供了关连式资料库的查询语言 SQL (Structured Query Language),是一种非常口语化、既易学又易懂的语法。此一语言几乎是每个资料库系统都必须提供的,用以表示关连式的操作,...

    oracle sql 语法大全

    oracle sql 语法大全 oracle sql 语法大全

    sql语法大全中文版

    sql语法大全中文版sql语法大全中文版sql语法大全中文版sql语法大全中文版sql语法大全中文版sql语法大全中文版

    SQL语法手册.rar

    SQL语法手册.rar SQL语法手册.rar SQL语法手册.rar SQL语法手册.rar

    SQL精讲语法(SQL语法大全.doc数据库)

    SQL语法大全 1. ASP与Access数据库连接: 2. ASP与SQL数据库连接: 3.整合性的查询: 1、等值连接:在连接条件中使用等于号(=)运算符比较被连接列的列值,其查询结果中列出被连接 表中的所有列,包括其中的重复...

    Sql语法帮助手册_Sql语法帮助文档.rar

    Sql语法帮助手册_Sql语法帮助文档.rar

    SQL语法大全全解析

    详细讲解SQL语法,值得收藏! 详细讲解SQL语法,值得收藏! 详细讲解SQL语法,值得收藏!

    SQL语法和测验SQL语法和测验

    SQL语法测验SQL语法测验SQL语法测验SQL语法测验SQL语法测验SQL语法测验SQL语法测验SQL语法测验SQL语法测验

Global site tag (gtag.js) - Google Analytics