SQL学习笔记(二)

SQL DELETE 语句

语句用于删除表中的记录

DELETE FROM table_name
WHERE some_column=some_value;

注意:请注意 SQL DELETE 语句中的 WHERE 子句!
WHERE 子句规定哪条记录或者哪些记录需要删除。如果您省略了 WHERE 子句,所有的记录都将被删除!

这里一定要再三强调加where!where!where!否则很容易就变成删库跑路

 

SELECT TOP

用于规定要返回的记录数目

这个对于拥有数千条记录的大型数据库表来说,是非常有用的

注意:并非所有的数据库系统都支持 SELECT TOP 语句。 MySQL 支持 LIMIT 语句来选取指定的条数数据, Oracle 可以使用 ROWNUM 来选取。

SQL Server/MS Acces 语法

SELECT TOP number|percent column_name(s)
FROM table_name;

MySQL语法

SELECT * FROM `character_money` ORDER BY silver_money DESC, gold_money DESC LIMIT 10

Oracle语法

SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number;

 

SELECT TOP PERCENT

在TOP后面跟数值和百分比作为参数

SELECT TOP 50 PERCENT * FROM Websites;
 
LIKE 操作符
LIKE操作符用于在WHERE子句中搜索列中的指定模式
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern;
 

SELECT * FROM `faction_info2` WHERE faction_name LIKE "小%"

这里是选取以小开头的名称

提示:%符号用于在模式的前后定义通配符(默认字母)也可以放 中间

SELECT * FROM `faction_info2` WHERE faction_name LIKE "%哈"

SELECT * FROM `faction_info2` WHERE faction_name LIKE "%测试%"

 

SQL 通配符

其实是紧接上面这条的,通配符通常都跟LIKE 操作符一起使用

SQL通配符用于搜索表中的数据

% 替代0个或者多个字符

_ 替代一个字符

[charlist] 代表字符列中的任何单一字符

[^charlist] 不在字符列中的任何单一字符

[!charlist]

 

%通配符使用方法

像上面的like一样

SELECT * FROM `faction_info2` WHERE faction_name LIKE "%哈"

可以前面后面,头尾

 

_通配符使用方法

SELECT * FROM `faction_info2` WHERE faction_name LIKE '_哈哈哈哈'

相对于来说,只是去掉了匹配的单个字母

代表的是_任意字符

 

[charlist]通配符

MySQL中使用REGEXP 或者 NOT REGEXP 运算符(或RLIKE 和 NOT RLIKE)来操作正则表达式

SELECT * FROM `faction_info2` WHERE faction_name REGEXP  "[你是test]"

 SELECT * FROM `faction_info2` WHERE faction_name RLIKE  "[你是test]"

 

IN操作符

允许在WHERE子句中规定多个值

SQL IN语法

 SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...);

SELECT * FROM `faction_info2` WHERE faction_name IN ("打打打", "哈哈哈哈哈")

 

SQL 别名

通过使用SQL,可以为表名称或列名称指定别名

创建别名是为了让列名称的可读性更强点

 

列的SQL别名语法

SELECT column_name AS alias_name FROM table_name

 

表的SQL别名语法

SELECT column_name(s) FROM table_name AS alias_name

 

如果列名称包含空格,要求使用双引号或者方括号

在一些情况下,使用别名很有用:

在查询中涉及超过一个表

在查询中使用了函数

列名称很长或者可读性差

需要把两个列或者多个列结合在一起

 

posted @ 2022-04-25 18:00  黑羽青衣  阅读(24)  评论(0编辑  收藏  举报