`
Eileenlml
  • 浏览: 70132 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

SQL语句总结

    博客分类:
  • SQL
 
阅读更多

DML数据操作语言

  • select
    SELECT语句用于从表中选取数据
    语法:SELECT 列名称 FROM 表名称
            SELECT * FROM 表名称
    星号(*)是选取所有列的快捷方式

    实例:SELECT FristName,dress FROM transcript

  • select distinct
    关键字distinct用于返回唯一不同的值
    语法:SELECT DISTINCT dress FROM transcript

  • where
    有条件的从表中选取数据
    语法:SELECT 列名称 FROM 表名称 WHERE 列 运算符 值
    实例:SELECT score FROM transcript WHERE score=78
            SELECT * FORM transcript WHERE dress='shanghai'

  • and 和 or
    在where子语句中把两个或者多个条件结合起来
    A和B都成立,则and运算符显示一条记录;
    A和B只要有一个成立,则or运算符显示一条记录;
    AND运算符实例:
    SELECT * FORM transcript WHERE FirstName='yang' AND LastName='ming'
    OR运算符实例:
    SELECT * FORM transcript WHERE FirstName='yang' OR LastName='ming'

  • ORDER BY用于对结果集进行排序;
    默认按照升序进行排列,若希望降序排列,使用DESC关键字;
    实例:SELECT FirstName,score FORM transcript ORDER BY FirstName
            
    SELECT FirstName,score FORM transcript ORDER BY FirstName,score
            
    SELECT FirstName,score FORM transcript ORDER BY FirstName DESC,score ASC

  • INSERT INTO 语句用于向表格中插入新的行
    语法:INSERT INTO 表名称 VALUES (值1,值2........)
    指定要插入数据的列:
    INSERT INTO table_name (列1,列2......) VALUES (值1,值2.......)
    实例:
    INSERT INTO transcript VALUES (8,xin,yu,95)
    insert into transcript (ID_t,LastName,FirstName,score) values (9,yan,zhu,88)

  • UPDATE 语句用于修改表中的数据
    语法:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称=某值
    实例:UPDATE transcript SET score = 87 WHERE ID_t = 8
    一行中的若干列:
    UPDATE transcript SET score = 89,LastName = 'jia',FirstName = 'wang' WHERE ID_t = 8

  • delete语句用于删除表中的行;
    语法:DELETE FORM 表名称 WHERE 列名称 = 值
    实例:DELETE FORM 
    transcript WHERE LastName = 'jia'
    删除所有的行
    delete form table_name
    delete * form table_name



  1. create DB  创建数据库
    语法:CREATE DATABASE database_name
    实际:创建一个名为my_db的数据库
    CREATE DATABASE my_db
  2. create table 创建数据库中表

    创建新表
    语法:CREATE TABLE 表名称
    (
    列名称1 数据类型,
    列名称2 数据类型,
    列名称3 数据类型,
    ......
    )

    实例:创建名为transcript的表
    CREATE TABLE transcript
    (
    ID_t int,
    LastName varchar(255),
    FirstName varchar(255),
    dress varchar(255),
    score varchar(255)
    )

    NOT NULL 约束
    强制列或者字段不接受空值
    例如:
    CREATE TABLE transcript
    (
    ID_t int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    dress varchar(255),
    score varchar(255) NOT NULL
    )

    使用旧表创建新表
    create table new_tab like old_tab

    PRIMARY KEY 主键必须包含唯一的值;
    每个表都应该且只能有一个主键;
    create table student
    (
    sid int not null,
    sname varchar(255)
    ...
    primary key(sid)
    )

    添加主键:
    alter table table_name add primary key(...)
    删除主键:
    alter table table_name drop primary key(...)

    create index 在表中创建索引
    CREATE INDEX index_name ON table_name(column_name)
    在表示创建一个唯一的索引
    CREATE UNIQUE INDEX index_name ON table_name(column_name)

    实例:CREATE INDEX student_index ON student(Sname)

    drop index 删除索引
    DROP INDEX index_name 
    实例:
    DROP INDEX student_index 





  3. drop 删除数据库
    DROP DATABASE database_name
    实例:DROP DATABASE my_db

    DROP table 删除表
    DROP TABLE table_name
    实例:drop table transcript

    truncate table 只删除表内数据,不删除表本身
    TRUNCATE TABLE transcript

  4. Alter
    ALTER TABLE 在已有的表中添加,修改或者删除列
    添加:
    ALTER TABLE table_name
    ADD column_name datatype
    删除:
    ALTER TABLE table_name
    DROP COLUMN column_name (某些数据库不允许此种删除方式)
    修改:
    ALTER TABLE table_name
    ALTER COLUMN column_name datatype

    实例:
    在已知的表中添加Brithday列
    ALTER TABLE transcript
    ADD Brithday date

  5. TOP 用于规定要返回的记录的数目;

  6. like  WHERE子句中搜索列中的指定模式
    语法:SELECT column_name FROM table_name WHERE column_name LIKE  pattern

    SELECT * FROM Persons
    WHERE City LIKE 'N%'


  7. IN  IN 操作符允许我们在 WHERE 子句中规定多个值
    SELECT column_name FROM table_name WHERE column_name IN (value1,value2...)

    SELECT * FROM Persons WHERE LastName IN ('Adams','Carter')


  8.  BETWEEN ... AND
    操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期
    SELECT column_name(s)
    FROM table_name
    WHERE column_name
    BETWEEN value1 AND value2

  9. AS
    表的 SQL Alias 语法
    SELECT column_name(s)
    FROM table_name
    AS alias_name

    列的As语法
    SELECT column_name AS as_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'


  10. SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据

    JOIN: 如果表中有至少一个匹配,则返回行
    LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
    RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
    FULL JOIN: 只要其中一个表中存在匹配,就返回行


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics