SQL语句学习记录(二)

本次复习按照菜鸟教程文档学习,原地址:https://www.runoob.com/sql/sql-between.html
 
一.SQL简介
1.RDBMS

表示关系型数据库管理系统

2.注意事项

SQL 对大小写不敏感:SELECT 与 select 是相同的

sql语句末尾只有写了;才会执行

 

二.SQL基础语法复习
1.数据库表

展示数据库中的表

show DATABASES

选择表

use demo

读取数据表的信息

SELECT * FROM EMP_INFO; 

建表(id为主键,非空,自增)

create table Websites ( Id INTEGER not null PRIMARY KEY auto_increment, Name VARCHAR(50), Url TEXT, Alexa INTEGER, Country VARCHAR(50) ) 

插入数据

INSERT INTO 表名称(列名1,列名2,....) VALUES (值1, 值2,....)

按照模板

insert into websites(name,url,alexa,country) values('google','https://google.com',1,'USA')  
insert into websites(name,url,alexa,country) 
values('淘宝','https://www.taobao.com/',13,'CN')  
insert into websites(name,url,alexa,country) 
values('百度','https://baidu.com/',4,'CN')  
insert into websites(name,url,alexa,country) values('Facebook','https://facebook.com',3,'USA') 

2.基本SQL命令展示
  •  SELECT - 从数据库中提取数据
  •  UPDATE - 更新数据库中的数据
  •  DELETE - 从数据库中删除数据
  •  INSERT INTO - 向数据库中插入新数据
  •  CREATE DATABASE - 创建新数据库
  •  ALTER DATABASE - 修改数据库
  •  CREATE TABLE - 创建新表
  •  ALTER TABLE - 变更(改变)数据库表
  •  DROP TABLE - 删除表
  •  CREATE INDEX - 创建索引(搜索键)
  •  DROP INDEX - 删除索引
3.SELECT语句

SELECT 语句用于从数据库中选取数据,结果被存储在一个结果表中,称为结果集。

查询所有列

SELECT * FROM Websites; 

查询部分列

SELECT name,country FROM Websites; 

4.SELECT DISTINCT语句

在表中,一个列可能会包含多个重复值,有时您也许希望仅仅列出不同(distinct)的值。

DISTINCT 关键词用于返回唯一不同的值

SELECT DISTINCT column_name,column_name FROM table_name; 

去重查询

SELECT DISTINCT country FROM Websites; 

5.SQL WHERE 子句
SELECT column_name,column_name FROM table_name 
WHERE column_name operator value; 

查询国家为CN的信息

SELECT * FROM Websites WHERE country='CN'; 

where子句中的操作符

=

等于

<>

不等于。注释:在 SQL 的一些版本中,该操作符可被写成 !=

>

大于

<

小于

>=

大于等于

<=

小于等于

BETWEEN

在某个范围内

LIKE

搜索某种模式

IN

指定针对某个列的多个可能值

6.SQL AND & OR 运算符

如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。

如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。

(1)AND
SELECT * FROM Websites WHERE country='CN' AND alexa > 5; 

(2)OR
SELECT * FROM WebsitesWHERE country='USA'OR country='CN';
(3)结合
SELECT * FROM Websites 
WHERE alexa > 10 AND (country='CN' OR country='USA');

7.SQL ORDER BY 关键字

ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。

ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,可以使用 DESC 关键字

模板

SELECT column_name,column_name FROM table_name ORDER BY column_name,column_name ASC|DESC; 
(1)降序排序
SELECT * FROM Websites ORDER BY alexa DESC; 

(2)升序排序

(3)结合
SELECT * FROM Websites ORDER BY country asc,alexa desc; 

8.SQL INSERT INTO 语句
INSERT INTO table_name VALUES (value1,value2,value3,...); 

或者

INSERT INTO table_name (column1,column2,column3,...) VALUES (value1,value2,value3,...); 

因此插入一条数据

insert into websites(name,url,alexa,country) values('google','https://google.com',1,'USA') 

9.SQL UPDATE 语句
UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value; 

修改数据库的值

UPDATE Websites  SET alexa='123', country='CN'  
WHERE name='淘宝'; 

遇到没有where的update语句一定要小心,因为它会将数据表中所有对应字段的数据修改为那个值

例如

UPDATE Websites  SET alexa='123', country='CN'
10.SQL DELETE 语句

模板

DELETE FROM table_name WHERE some_column=some_value; 

删除一条记录

DELETE FROM Websites 
WHERE name='Facebook' AND country='CN'; 

记录消失

原文地址:https://www.cnblogs.com/ak918xp/p/13862415.html