SQL语句基础

简介

SQL 是用于访问和处理数据库的标准的计算机语言

SQL 指结构化查询语言,全称是 Structured Query Language

SQL 可以访问和处理数据库

SQL 是一种 ANSI(American National Standards Institute 美国国家标准化组织)标准的计算机语言

作用

(1)面向数据库执行查询
(2)可从数据库取回数据
(3)可在数据库中插入新的记录
(4)可更新数据库中的数据
(5)可从数据库删除记录
(6)可创建新数据库
(7)可在数据库中创建新表
(8)可在数据库中创建存储过程
(9)可在数据库中创建视图
(10)可以设置表、存储过程和视图的权限

重要SQL命令

SELECT - 从数据库中提取数据

UPDATE - 更新数据库中的数据

DELETE - 从数据库中删除数据

INSERT INTO - 向数据库中插入新数据

CREATE DATABASE - 创建新数据库

ALTER DATABASE - 修改数据库

CREATE TABLE - 创建新表

ALTER TABLE - 变更(改变)数据库表

DROP TABLE - 删除表

CREATE INDEX - 创建索引(搜索键)

DROP INDEX - 删除索引

基本SQL语句

SQL SELECT语句

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

例如:

//1
SELECT column_name,column_name
FROM table_name;

SELECT name,country FROM Websites;

//2
SELECT * FROM table_name;

SELECT * FROM Websites;

SQL SELECT DISTINCT 语句

SELECT DISTINCT 语句用于返回唯一不同的值

例如:

SELECT DISTINCT column_name,column_name
FROM table_name;

SELECT DISTINCT country FROM Websites;

SQL WHERE 子句

WHERE 子句用于过滤记录,用于提取那些满足指定标准的记录

例如:

SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;

SELECT * FROM Websites WHERE country='CN';

注意
如果是数值字段,请不要使用引号

例如:

SELECT * FROM Websites WHERE id=1;

WHERE 子句中的运算符
下面的运算符可以在 WHERE 子句中使用:

运算符描述
=等于
<>不等于。注释:在 SQL 的一些版本中,该操作符可被写成 !=
>大于
<小于
>=大于等于
<=小于等于
BETWEEN在某个范围内
LIKE搜索某种模式
IN指定针对某个列的多个可能值

SQL AND & OR 运算符

AND & OR 运算符用于基于一个以上的条件对记录进行过滤

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

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

例如:

//AND
SELECT * FROM Websites
WHERE country='CN'
AND alexa > 50;

//OR
SELECT * FROM Websites
WHERE country='USA'
OR country='CN';

//结合 AND & OR
SELECT * FROM Websites
WHERE alexa > 15
AND (country='CN' OR country='USA');

SQL ORDER BY 关键字

ORDER BY 关键字用于对结果集进行排序

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

例如:

//ORDER BY
SELECT * FROM Websites
ORDER BY alexa;

//ORDER BY DESC
SELECT * FROM Websites
ORDER BY alexa DESC;

//ORDER BY 多列
SELECT * FROM Websites
ORDER BY country,alexa;

SQL INSERT INTO 语句

INSERT INTO 语句用于向表中插入新记录

INSERT INTO 语句可以有两种编写形式:
(1)无需指定要插入数据的列名,只需提供被插入的值

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

(2)需要指定列名及被插入的值

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

例如:

//向 "Websites" 表中插入一个新行
INSERT INTO Websites (name, url, alexa, country)
VALUES ('百度','https://www.baidu.com/','4','CN');

//在指定的列插入数据
INSERT INTO Websites (name, url, country)
VALUES ('stackoverflow', 'http://stackoverflow.com/', 'IND');

SQL UPDATE 语句

UPDATE 语句用于更新表中已存在的记录

UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;

例如:

UPDATE Websites 
SET alexa='5000', country='USA' 
WHERE name='菜鸟教程';

Update 警告
在更新记录时要格外小心!在上面的实例中,如果省略了 WHERE 子句

UPDATE Websites
SET alexa='5000', country='USA'

执行以上代码会将 Websites 表中所有数据的 alexa 改为 5000,country 改为 USA,执行没有 WHERE 子句的 UPDATE 要慎重

SQL DELETE 语句

DELETE 语句用于删除表中的记录

DELETE FROM table_name
WHERE some_column=some_value;

例如:

//从 "Websites" 表中删除网站名为 "百度" 且国家为 CN 的网站 
DELETE FROM Websites
WHERE name='百度' AND country='CN';

//删除所有数据,可以在不删除表的情况下,删除表中所有的行。这意味着表结构、属性、索引将保持不变
DELETE FROM table_name;
DELETE * FROM table_name;

总结

SQL语句最基本操作就是增删查改,如果用node.js做后台开发,可能需要和数据库打交道

参考

http://www.runoob.com/sql/sql-tutorial.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值