sql笔记

一、简介

SQL 是用于访问和处理数据库的标准的计算机语言。数据库类型包括:MySQL、SQL Server、Access、Oracle、Sybase、DB2 等等。

二、基础用法

1、linux中连接mysql,访问权限查询和设置

//linux中连接mysql
mysql -h host -P port -u user_name -p password
//切换数据库
use db_name
//查询当前数据库中所有表
show tables;
//查询xx表中所有字段
SHOW FULL COLUMNS FROM db_name.table_name;
//查询表中信息
select * from table_name;

//查询mysql服务权限设置
show grants;
//为某ip授权请求权限,其中@后的'%'可改为相应的ip地址
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password'

2、查询时去重

//如果选择了多个列,则是对两列组合后去重,即1,2 和 1,3是不同的,均显示
SELECT DISTINCT column_name,column_name
FROM table_name;

3、查询时排序

//ASC是默认状态,即升序排序,DESC为降序排序
SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;

4、插入数据

//第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:
INSERT INTO table_name
VALUES (value1,value2,value3,...);

//第二种形式需要指定列名及被插入的值:
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);

5、更新数据

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

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

6、删除数据

DELETE FROM table_name
WHERE some_column=some_value;

7、SQL通配符

通配符与 SQL LIKE 操作符一起使用:

%:替代0个或多个字符

_:替代一个字符

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

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

//url以https开头
SELECT * FROM Websites
WHERE url LIKE 'https%';

//url包含“oo”
SELECT * FROM Websites
WHERE url LIKE '%oo%';

//url为一个任意字符+“oogle”
SELECT * FROM Websites
WHERE name LIKE '_oogle';

//name以“G”、“F”或“s”开头
SELECT * FROM Websites
WHERE name REGEXP '^[GFs]';

//name 以 A 到 H 字母开头
SELECT * FROM Websites
WHERE name REGEXP '^[A-H]';

//name 不以 A 到 H 字母开头
SELECT * FROM Websites
WHERE name REGEXP '^[^A-H]';

8、字段可能为多个值

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

9、SQL连接(JOIN)

 

//示例
SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name=table2.column_name;

//JOIN默认为INNER JOIN
SELECT column_name(s)
FROM table1
JOIN table2
ON table1.column_name=table2.column_name;

10、SQL函数

AVG() - 返回平均值
COUNT() - 返回行数
FIRST() - 返回第一个记录的值
LAST() - 返回最后一个记录的值
MAX() - 返回最大值
MIN() - 返回最小值
SUM() - 返回总和
UCASE() - 将某个字段转换为大写
LCASE() - 将某个字段转换为小写
MID() - 从某个文本字段提取字符,MySql 中使用
SubString(字段,1,end) - 从某个文本字段提取字符
LEN() - 返回某个文本字段的长度
ROUND() - 对某个数值字段进行指定小数位数的四舍五入
NOW() - 返回当前的系统日期和时间
FORMAT() - 格式化某个字段的显示方式

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值