澳门皇冠金沙网站-澳门皇冠844网站

热门关键词: 澳门皇冠金沙网站,澳门皇冠844网站

day_02mysql表的约束设计,iOS数据存储之SQL语句的基

5.0 DQL条件查询

    5.1. where子句后跟条件
    5.2. 运算符
        * > 、< 、<= 、>= 、= 、<>
        * BETWEEN...AND  
        * IN( 集合) 
        * LIKE:模糊查询
            * 占位符:
                * _:单个任意字符
                * %:多个任意字符
        * IS NULL  
        * and  或 &&
        * or  或 || 
        * not  或 !

SQL语句的项目

  • 数据定义语句(DDL:Data Definition Language)

    • 包括create和drop等操作;
    • 在数据库中开创新表或删除表(create table或 drop table);
  • 数码操作语句(DML:Data Manipulation Language)

    • 包括insert、update、delete等操作
  • 数据查询语句(DQL:Data Query Language)

    • 可以用于查询获得表中的数目
    • 重在字select是DQL(也是全数SQL)用得最多的操作
    • 别的DQL常用的要害字有where,order by,group by和having

DQL

  • 正是大家从数据库中读取数据
SELECT * FROM 表名;  //  查询所有的字段
/**查询指定字段*/
SELECT 字段1, 字段2, … from表名 ;
eg. SELECT name, age FROM t_person;
/**查询指定条件*/
SELECT name, age FROM t_person WHERE age > 18;
  • 总计记录的多寡
SELECT count (字段) FROM表名 ;
SELECT count ( * ) FROM 表名 ;
  • 排序
查询出来的结果可以用order by进行排序
select * from t_student order by 字段 ;
select * from t_student order by age ;

默认是按照升序排序(由小到大),也可以变为降序(由大到小)
select * from t_student order by age desc;  //降序
select * from t_student order by age asc;   // 升序(默认)

也可以用多个字段进行排序
select * from t_student order by age asc, height desc ;
先按照年龄排序(升序),年龄相等就按照身高排序(降序)
  • limit
  • 采纳limit能够标准地垄断查询结果的数目,比如每便只询问10条数据 能够看做分页
/**跳过数值1条,去数值2条*/
pselect * from 表名 limit数值1, 数值2; 

如果我们想做分页的话,如果控制每一页为10条的数据的话
当我们请求第n页数句的时候 关系为 第n页:limit 5*(n-1), 5

1 操作数据库:CRUD

1.1 C(Create):创建
        * 创建数据库:
            * create database 数据库名称;
        * 创建数据库,判断不存在,再创建:
            * create database if not exists 数据库名称;
        * 创建数据库,并指定字符集
            * create database 数据库名称 character set 字符集名;

        * 练习: 创建db4数据库,判断是否存在,并制定字符集为gbk
            * create database if not exists db4 character set gbk;
1.2. R(Retrieve):查询
        * 查询所有数据库的名称:
            * show databases;
        * 查询某个数据库的字符集:查询某个数据库的创建语句
            * show create database 数据库名称;
1.3 U(Update):修改
        * 修改数据库的字符集
            * alter database 数据库名称 character set 字符集名称;
1.4. D(Delete):删除
        * 删除数据库
            * drop database 数据库名称;
        * 判断数据库存在,存在再删除
            * drop database if exists 数据库名称;
1.5. 使用数据库
        * 查询当前正在使用的数据库名称
            * select database();
        * 使用数据库
            * use 数据库名称;

DQL语句的主导接纳

  • 查询语句
    • 主干查询(查询全体表格)
SELECT * FROM t_student;
  • 询问有个别字段(查询name和age多个字段)
SELECT name, age FROM t_student;
  • 经过标准推断来查询相应的数目(年龄大于等于18)
SELECT * FROM t_student WHERE age >= 18;
  • 经过标准决断来查询相应的多寡(名字以i起始),使用like关键字(模糊查询)
SELECT * FROM t_student WHERE name like '%i%';
  • 计量个数
    • 算算一共某些列
SELECT count(*) FROM t_student;

- 计算某一个列个数

SELECT count(age) FROM t_student;
  • 排序
    • 升序 ASC (暗中认可是升序)
SELECT * FROM t_student ORDER BY age;

- 降序 DESC

SELECT * FROM t_student ORDER BY age DESC;

- 按照年龄升序排序,如果年龄相同,按照名字的降序排列

SELECT * FROM t_student ORDER BY age,name DESC;
  • 起别名
    • 给列起别称(as能够省略)
SELECT name AS myName, age AS myAge FROM t_student;

- 给表起别名

SELECT s.name, s.age FROM t_student as s;
  • limit
SELECT * FROM t_student LIMIT 数字1,数字2;

- 跳过前9条数据,再查询3条数据

SELECT * FROM t_student LIMIT 9, 3;

- 跳过0条数据,取5条数据

SELECT * FROM t_student LIMIT 5; 

外键约束

  • 选取外键约束能够用来建立表与表之间的交换
  • 外键的貌似景况是:一张表的某部字段,援用着另一张表的主键字段
新建一个外键
create table t_student (id integer primary keyautoincrement,name text,age integer,class_idinteger,constraintfk_t_student_class_id_t_class_idforeignkey(class_id) (id));references t_class
t_student表中有一个叫做fk_t_student_class_id_t_class_id的外键
这个外键的作用是用t_student表中的class_id字段引用t_class表的id字段

6.0 DQL条件查询_澳门皇冠844网站,颠倒是非查询

    LIKE:模糊查询
            * 占位符:
                * _:单个任意字符
                * %:多个任意字符

DML语句的主导选择

  • 安插数据
INSERT INTO 't_student' (name, age, height) VALUES ('why', 18, 1.88);
  • 讲话表明
    • INSERT INTO: 插入数据
    • 't_student': 在哪一个表中插入数据
    • (数据的字段): 给哪些字段插入数据
    • VALUES ('why', 18, 1.88): 插入的具体值
  • 更新数据
UPDATE 't_student' SET 字段 = '值' WHERE 条件判断;
  • 言语表达
    • UPDATE: 跟新数据
    • 't_student': 在哪一个表中更新数据
    • SET 字段 = '值': 更新怎么着的数码
    • WHERE 条件判别: 更新哪些数据
  • 现实采纳
UPDATE t_student SET name = 'me' WHERE age = 14;
UPDATE t_student SET name = 'liu' WHERE age is 20;
UPDATE t_student SET name = 'yy' WHERE age < 20;
UPDATE t_student SET name = 'A' WHERE age < 100 and score > 60;
UPDATE t_student SET name = 'ly';
  • 除去数据
DELETE FROM t_student;
DELETE FROM t_student WHERE age < 30;
  • 语法表达
    • DELETE FROM: 从表中删除数据
    • t_student : 表名
    • 能够跟条件也足以不跟:不跟代表删除全部的数量

SQLite语句

  • 第一来讲下这种语言书写规范的全体特点

    • 不用区分轻重缓急写
    • 每条语句用;为结尾,跟我们oc一样
  • 实则SQLite种类就三种 说的赫赫上写正是DDL 、DML、 DQL 说白了分别对应正是数据定义语句数据操作数据查询

  • DDL(DDL:Data Definition Language) 一般就是创表删表操作

  • DML(DML:DataManipulation Language) 添加修改删除表中的数据

  • DQL(DQL:Data QueryLanguage) 一般是可以用于查询获得表中的数据

本文由澳门皇冠金沙网站发布于数据库研究,转载请注明出处:day_02mysql表的约束设计,iOS数据存储之SQL语句的基