MySQL高级SQL语句(上)

Posted 正在迷途

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL高级SQL语句(上)相关的知识,希望对你有一定的参考价值。

一、准备

先创建两张表,用于语句实验

mysql -uroot -p123456
show databases;

create database plane;
use plane;
create table destination (
region char(20),
place_name char(20));

insert into destination values(southwest,chengdu);
insert into destination values(north China,beijing);
insert into destination values(southwest,kunming);
insert into destination values(north China,tianjin);
select * from destination;

create table info (
place_name char(20),
sales int(10),
date char(10));

insert into info values(chengdu,300,2022-02-12);
insert into info values(beijing,250,2022-02-12);
insert into info values(kunming,330,2022-02-14);
insert into info values(beijing,180,2022-02-16);
select * from info;

MySQL高级SQL语句(上)_字段

MySQL高级SQL语句(上)_字符串_02

MySQL高级SQL语句(上)_表名_03

MySQL高级SQL语句(上)_字符串_04

二、MySQL高级语句

1、SELECT------显示表格中一个或数个栏位的所有资料

语法:SELECT "字段" FROM "表名";
例:
select place_name from destination;

MySQL高级SQL语句(上)_字段_05

2、DISTINCT------不显示重复的资料

语法:SELECT DISTINCT "字段" FROM "表名";
例:
select distinct place_name from info;

MySQL高级SQL语句(上)_MySQL高阶用法_06

3、WHERE------有条件查询

语法:SELECT "字段" FROM "表名" WHERE "条件";
:
select place_name from info where sales > 300;

MySQL高级SQL语句(上)_MySQL高阶用法_07

4、AND|OR------且|或

语法:SELECT "字段" FROM "表名" WHERE "条件1" [AND|OR] "条件2"+ ;
例:
select place_name from info where sales > 300 or sales < 200;

MySQL高级SQL语句(上)_字符串_08

5、IN------显示已知的值的资料

语法:SELECT "字段" FROM "表名" WHERE "栏位" IN (值1, 值2, ...);
例:
select * from info where place_name in (beijing);
select * from info where place_name in (beijing,kunming);

MySQL高级SQL语句(上)_表名_09

6、BETWEEN------显示两个值范围内的资料

语法:SELECT "字段" FROM "表名" WHERE "栏位" BETWEEN 值1 AND 值2;
例:
select * from info where sales between 300 and 350;

MySQL高级SQL语句(上)_表名_10

7、通配符

通常通配符都是跟 LIKE 一起使用的

% :百分号表示零个、一个或多个字符
_ :下划线表示单个字符
例:
A_Z:所有以 A 起头,另一个任何值的字符,且以 Z 为结尾的字符串。例如,ABZ A2Z 都符合这一个模式,而 AKKZ 并不符合 (因为在 A Z 之间有两个字符,而不是一个字符)
ABC%: 所有以 ABC 起头的字符串。例如,ABCD ABCABC 都符合这个模式。
%XYZ: 所有以 XYZ 结尾的字符串。例如,WXYZ ZZXYZ 都符合这个模式。
%ing%: 所有含有 ing这个模式的字符串。例如,beijing kunming 都符合这个模式。
_ia%:所有第二个字母为 i 和第三个字母为 a 的字符串。例如,tianjin 符合这个模式,而 kunming 则不符合这个模式。

8、LIKE------匹配一个模式来找出我们要的资料

语法:SELECT "字段" FROM "表名" WHERE "栏位" LIKE 模式;
例:
select * from info where place_name like _he%;

MySQL高级SQL语句(上)_字段_11

9、ORDER BY------按关键字排序

语法:SELECT "字段" FROM "表名" [WHERE "条件"] ORDER BY "字段" [ASC, DESC];
#ASC 是按照升序进行排序的,是默认的排序方式。
#DESC 是按降序方式进行排序。
例:
select place_name,sales,date from info order by sales;
select place_name,sales,date from info order by sales asc;
select place_name,sales,date mysql

MySQL

MySQL高级SQL语句(上)

mysql系列一

MYSQL数据库

MySQL基础