美文网首页
SQL结构化查询语言(二)

SQL结构化查询语言(二)

作者: GoodTekken | 来源:发表于2020-01-02 09:25 被阅读0次

根据上一章节SQL结构化查询语言(一),创建数据库和数据表后,可以增加自己想要的数据:
https://www.jianshu.com/p/7aa34c91efa7

insert into my_contacts(last_name,first_name,email,gender,birthday,profession,location_1,status_1,interests,seeking) --1,insert into 往数据表中拆入数据
values('Bnderson','Jillian','jill_anderson@breakneckpizza.com','F','1980-09-05','Technical Writer','Palo Alto,CA','Singel','Kayaking,Reeptiles','Relationship,Friends1');

insert into my_contacts(last_name,first_name,email,gender,birthday,profession,location_1,status_1,interests,seeking) --1,insert into 往数据表中拆入数据
values('Cnderson','Jillian','jill_anderson@breakneckpizza.com','F','1980-09-05','Technical Writer','Palo Alto,CA','Singel','Kayaking,Reeptiles','Relationship,Friends2');

insert into my_contacts(last_name,first_name,email,gender,birthday,profession,location_1,status_1,interests,seeking) --1,insert into 往数据表中拆入数据
values('Dnderson','Jillian','jill_anderson@breakneckpizza.com','F','1980-09-05','Technical Writer','Palo Alto,CA','Singel','Kayaking,Reeptiles','Relationship,Friends3');

insert into my_contacts(last_name,first_name,email,gender,birthday,profession,location_1,status_1,interests,seeking) --1,insert into 往数据表中拆入数据
values('Enderson','Jillian','jill_anderson@breakneckpizza.com','F','1980-09-05','Technical Writer','Palo Alto,CA','Singel','Kayaking,Reeptiles','Relationship,Friends4');

 insert into my_contacts(last_name,first_name,email,gender,birthday,profession,location_1,status_1,interests,seeking) --1,insert into 往数据表中拆入数据
values('Ender''s son','Jillian','jill_anderson@breakneckpizza.com','F','1980-09-05','Technical Writer','Palo Alto,CA','Singel','Kayaking,Reeptiles','Relationship,Friends4');

select * from my_contacts; -- 查看表中的详细内容

插入数据.png

select * from my_contacts where last_name >= 'a%' and last_name < 'c%'

  • SELECT语句中可以使用WHERE进行条件选择,在WHERE语句后面可以加上大于,等于,小于等限定条件。

select * from my_contacts where last_name >= 'a%' and last_name < 'c%'

  • SELECT选选项中可以选择需要出现的列,这样做的好处可以是加快查询速度,让SQL帮我们承担过滤数据的重担。

select last_name,first_name from my_contacts where last_name = 'Ender''s son';

  • 在变量名称中如果出现单引号(如,student's flowers),在进行匹对和筛查时可以使用转义(',\),如student''s flowers,或student\'s flowers
  • 想要选择所有的列,可以在SELECT中使用(*)

筛选条件的关键字可以是:AND, OR, LIKE, NOT, BETWEEN, IN,IS NULL。
模糊匹配可以选择LIKE,例如:

select last_name,first_name from my_contacts where last_name LIKE '%son';

(在单引号中放入百分比符号(%),就是告诉软件,我们要在locaton列中查找所有以“son”结尾的值)
所以说,百分比(%)符号是任意数量的未知字符的替身。

第一个通配符是%,第二个通配符是下划线( _ ),它是一个未知字符的替身。

select * from my_contacts where gender is null

如果数据表中有NULL也是可以像上面这句一样,可以筛选出来。

当然,在条件筛查时,如果使用了where count >=30 AND count <=60,那么使用BETWEEN更好。BETWEEN不仅使查询的长度比较短,而且能返回一样的结果,可以改写为:WHERE count BETWEEN 30 AND 60;

另外,我们在WHERE 语句中查找OR条件时(where last_name = 'Dnderson' or last_name = 'Enderson' OR ... )除了使用这么多的OR,我们也可以简单地利用关键字IN,加上括号围起来的值的集合。只要列值匹配集合中的任何值,即可返回该行或该列。
WHERE last_name IN ('Bnderson','Cnderson','Dnderson','Enderson');

select last_name from my_contacts where not (last_name = 'Dnderson' or last_name = 'Enderson')

也可以取相反的逻辑,NOT IN,可以反转查询结果,找出值不在集合中的记录。

总结
1.SELECT * 用于选择表中的所有列,用(‘)与(\)转义,字符串中的单引号前应加上另一个单引号或反斜线来把它转换成直接量。
2.掌握 = <> < > <= >=运算符,IS NULL可以用来NULL值条件。
3.ANDOR可以在WHERE子句中结合查询条件,让查询更精确,NOT可以反转查询结果,取得相反的值。
4.BETWEEN选择一个范围内的值,LIKE搭配(%)(_)通配符搜索部分文本字符串。

相关文章

  • 简单的查询语句

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

  • 和MySQL的第一次邂逅

    一、sql概述 sql:Structure Query Language,结构化查询语言 二、sql分类 1、DD...

  • SQL 和 SQLite

    一.SQL Structured Query Language 结构化查询语言 结构化查询语言(Structure...

  • mysql必知必懂的常识

    一、初识SQL语言 SQL(Structured Query Language 即结构化查询语言) SQL语言主要...

  • SQL语句基础

    SQL:结构化查询语言 SQL语言分类 DDL:数据定义语言。 DML:数据操作语言。 DQL:数据查询语言。 数...

  • MySql的基础用法

    概念 SQL:对数据库进行查询和修改的语言叫做SQL,SQL的含义结构化查询语言

  • mysql语言

    一、SQL(Structured Query Language 即结构化查询语言)SQL语言主要用于存取数据、查询...

  • 2018-11-12 SQL简单查询

    结构化查询语言: 结构化查询语言(Structured Query Language)简称SQL, 是操作和检索关...

  • 第五章:SQL语言概述

    SQL:结构化查询语言 5.1SQL语言分类 1、数据查询语言: ·select 2、数据操纵语言:DML INS...

  • MySQL:数据查询语言DQL,查询语法及实例

    SQL语言 SQL(Structured Query Language)的含义是结构化查询语言.SQL 是用于访问...

网友评论

      本文标题:SQL结构化查询语言(二)

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