美文网首页iOS数据库相关程序员数据库
一篇文章让你掌握SQL的基础语句使用

一篇文章让你掌握SQL的基础语句使用

作者: 无意惹东风 | 来源:发表于2017-04-19 13:47 被阅读124次

    本文主要介绍关于数据库操作中SQL语句的简介和基础使用语法。

    SQL是一种结构性查询语言、用于和数据库之间的数据交互、通过使用SQL可以对数据库的数据进行创建、更新、删除、修改、查询等一系列的操作。

    SQL对大小写不敏感

    SQL语句末尾的分号不是必须的,可以不用加

    SQL结构性查询语言 = DML数据操作语言 + DDL数据定义语言


    DML:查询+更新

    select 查询:从数据库中获取数据

    update 更新:更新数据库中的数据

    delete 删除:删除数据库中的数据

    insert into 增加:像数据库中插入新的数据


    DDL:创建+修改+删除 ==> 库+表+索引

    create database  创建新的数据库

    alter database  修改数据库

    create table  创建新的数据库表

    alter table  修改数据库表

    drop table  删除表

    create index  创建新的索引

    drop index  删除索引


    以下主要是SQL的基础语法的使用:

    前提:数据库中有一张联系人信息表名为Persons,包含 id(在表中的顺序), name, sex, age, phoneNumber, city

    举例参考表

    1. select 和 select *

    语句:select 条件字段(列名)  from  表名

    描述:select用于在表中选取数据。得到的结果数据会被存储在一张结果表中,亦称结果集。


    要求1: 查询出表中name字段对应的所有数据

    select name from Persons;


    要求2: 查询出表中name字段和age字段对应的所有数据

    select name,age from Persons;


    要求3: 查询出表中所有字段对应的所有数据

    select * from Persons;           (* 表示所有条件)


    2. select distinct 

    描述:有时候可能一个条件字段对应的数据中由多个相同的数据值,这个时候如果我们只需查询显示一个数据值,就需要用distinct这个关键字来操作进行去重

    要求: 查询出表中age字段对应的数据,并去掉重复数据

    select distinct age from Presons; 


    3. where

    语法:select * from Persons where 列名=列值;

    描述:比如说我们要查找某个范围中的数据,就涉及到条件查询,

    这个时候通常用where来处理。


    要求1: 查询出表中sex字段对应的所有女性数据

    select * from Persons where sex='female';


    要求2: 查询出表中age字段对应的年龄在20到30岁之间(开区间)的所有数据

    select * from Persons where 20<age<30;


    4. and & or

    描述:多个条件一起查询时候使用


    要求1: 查询出表中sex字段对应的女性,并且年龄在25岁以上的数据

    select * from Persons where sex='female' and age>25;


    要求2: 查询出表中sex字段对应的男性,或者年龄在40岁以上的数据

    select * from Persons where sex='male' or age>40;


    要求3: 查询出表中sex字段对应的男性或者age在40岁以上,并且city在杭州的所有数据

    select * from Persons where (sex='male' or age>40) and city='hangzhou';


    5. order by

    描述:对于查询到的数据我们想要进行排序的时候就用order by来操作,

    order by 默认是按照升序规则排序的


    要求1:对Persons表中所有数据进行按照年龄大小排序查询

    select * from Persons order by age;


    要求2:把Persons表中的所有数据根据name字段来查询并且按照名称进行排序

    select name from Persons order by name;

    (此处默认为升序,name均为英文,则会按照a-z的顺序进行展示)


    要求3:desc - 逆序(降序)

    把Persons表中的所有数据根据name字段来查询并且按照名称进行逆序排序

    select name from Persons order by name desc;

    (此处排序为逆序,name均为英文,则会按照z-a的顺序进行展示)


    要求4: asc - 顺序(升序)

    根据name,id两个条件查询,按照name逆序,id顺序的方式展示

    select name,id from Persons order by name desc, id asc;


    6. insert into

    描述:向表中插入新的行数据

    insert into 表名 values (值1, 值2, 值3, ...);

    insert into 表名 (列1,列2,列3,...) values (值1, 值2, 值3, ...);


    要求1: 原表列数插入

    给Persons表中插入一条新数据

    (这个时候插入的这条数据包含的字段和原表的列数是 相同的)

    insert into Persons values (值1, 值2, 值3, 值4, 值5, 值6);


    要求2: 非原表列数插入

    给Persons表中插入一条新数据,这个数据只有name和age

    (这个时候插入的这条数据包含的字段和原表的列数是 不同的)

    insert into Persons (name,age ) values ('Xuezhiqian', 35);

    insert into Persons (name,age ) values ('Luhan', 27);


    7. update

    描述:修改表中的数据

    update 表名 set 列名=新值 where 列名=某值;

    (6中我们插入的数据中有一条name='Xuezhiqian'的新数据, 但这个数据和我们原表相比并不完整。所以我们现在要修改他的数据)


    要求1: 给name='Xuezhiqian'的这条新数据增加sex字段

    update Persons set sex='male' where name='Xuezhiqian';


    要求2: 给name='Xuezhiqian'的这条新数据增加city字段并且把age改成34

    update Persons set city='shanghai' , age=34 where name='Xuezhiqian';


    8. delete

    描述:删除表中的行数据

    delete from 表名 where 列名=列值;

    delete from 表名;

    delete * from 表名;

    (6中我们插入的数据中有一条name='Luhan'的新数据,现在想要删除掉)


    要求1: 把name='Luhan'的这条新数据删除

    delete from Persons where name='Luhan';


    要求2: 删除整个Persons表的所有行

    delete from Persons;

    或者

    delete * from Persons;


    以上便是SQL操作数据库的基础语句的汇总

    码文不易,还望支持。

    有关SQL的相关知识会后续持续更新,欢迎关注。康撒米达~~~

    相关文章

      网友评论

        本文标题:一篇文章让你掌握SQL的基础语句使用

        本文链接:https://www.haomeiwen.com/subject/wsoczttx.html