SQL
- SQL,指结构化查询语言,全称是 Structured Query Language。
- SQL 让您可以访问和处理数据库。
- SQL 是一种 ANSI(American National Standards Institute 美国国家标准化组织)标准的计算机语言
数据库表
-
一个数据库通常包含一个或多个表。每个表由一个名字标识(例如:"Websites"),表包含带有数据的记录(行)
一些最重要的 SQL 命令(对大小字母不敏感)
- SELECT - 从数据库中提取数据
- UPDATE - 更新数据库中的数据
- DELETE - 从数据库中删除数据
- INSERT INTO - 向数据库中插入新数据
- CREATE DATABASE - 创建新数据库
- ALTER DATABASE - 修改数据库
- CREATE TABLE - 创建新表
- ALTER TABLE - 变更(改变)数据库表
- DROP TABLE - 删除表
- CREATE INDEX - 创建索引(搜索键)
- DROP INDEX - 删除索引
mysql> use RUNOOB;
Database changed
mysql> set names utf8;
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT * FROM Websites;
+----+--------------+---------------------------+-------+---------+
| id | name | url | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1 | Google | https://www.google.cm/ | 1 | USA |
| 2 | 淘宝 | https://www.taobao.com/ | 13 | CN |
| 3 | 菜鸟教程 | http://www.runoob.com/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 20 | CN |
| 5 | Facebook | https://www.facebook.com/ | 3 | USA |
+----+--------------+---------------------------+-------+---------+
5 rows in set (0.01 sec)
解析
- use RUNOOB; 命令用于选择数据库。
- set names utf8; 命令用于设置使用的字符集。
- SELECT * FROM Websites; 读取数据表的信息。
- 上面的表包含五条记录(每一条对应一个网站信息)和5个列(id、name、url、alexa 和country)。
SQL语法
(1)SELECT 语句——SELECT 语句用于从数据库中选取数据。
SELECT column_name,column_name
FROM table_name;
(2)SELECT * 选取所有的列
SELECT * FROM table_name;
(3)SELECT DISTINCT 语句——返回唯一不同的值。
SELECT DISTINCT column_name,column_name
FROM table_name;
(4)WHERE 子句用于过滤记录。
SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;
(5)AND & OR 运算符用于基于一个以上的条件对记录进行过滤
SELECT * FROM Websites
WHERE alexa > 15
AND (country='CN' OR country='USA');
(6)ORDER BY 关键字用于对结果集进行排序。
SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;
(7)INSERT INTO 语句用于向表中插入新记录。
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
(8)UPDATE 语句用于更新表中的记录。
UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;
(9)DELETE 语句用于删除表中的记录。
DELETE FROM table_name
WHERE some_column=some_value;