SQL基础
常见数据库
• Oracle Database : 甲骨文
• SQL Server : 微软
• DB2 : IBM
• PostgreSQL : 开源
• MySQL : 开源
• Access : 微软
数据库结构:
- 服务端:用于接收并处理其他程序发出的请求的程序,或者是安装此类程序的设备
- 客户端:向服务器发送请求的程序,或者是安装此类程序的设备
- 库:就是一堆表组成的数据集合
- 表:类似于Excel,有行和列组成的二维表
- 字段:字段就是表格的表头
- 记录:表里面的数据
SQL基础语法
增删改查
增:
CREATE DATABASE <库名>; //增加数据库
create table table_name (column_name column_type); //增加表
删:
DROP DATABASE <库名>; //删除数据库
drop table table_name; //删除表
alter table table_name drop i; //删除表里的字段
查:
Show databases; //查看所有数据库
Show tables; //查看所有表
desc table_name //查看表的类型
改:
alter table ta change b bbb int; //修改字段名和属性
insert into 表名 (字段名1,字段名2,......) values (值1,值2,....); //为表中所有字段插入数据
insert into 表名 [(字段名1,字段名2,...)] values (值 1,值 2,…),(值 1,值 2,…),...; //同时插入多条数据
数据类型:
• 整形
Tinyint 1字节 范围(-128~127)
Smallint 2字节 范围(-32768~32767)
Mediumint 3字节 范围(-8388608~2147483647)
Int 4字节 范围(-2147483648~2147483647)
Bigint 8字节 范围(+-9.22*10的18次方+-9,220,000,000,000,000,000
• 浮点型
Float(m,d) 4字节 单精度浮点型,m总个数,d小数位
Double(m,d) 8字节 双精度浮点型,m总个数,d小数位
Decimal(m,d) decimal是存储为字符串的浮点数
• 字符串型
Char(n) 固定长度 最多255个字符
Varchar(n) 可变长度 最多65535个字符,常用的变量string
Tinytext 可变长度 最多255个字符,2^8-1,保存微型文本
Text 可变长度 最多65535个字符,2^16-1,保存大文本
Mediumtext 可变长度 最多2^24-1字符
Longtext 可变长度 最多2^32-1个字符
mysql基础查询语句
select*from 表 order by 字段 [ASC(默认)/DESC];
order by 排序
(select*from aaa order by aa;) //知道字段的情况
(select*from aaa order by 1;) //不知道字段可以用数字代替
limit n,m 分页
(select*from aaa limit n,m;) //n表示从第几行开始,m表示取第几条
(select*from aaa limit 0,1;)
like 模糊查询
(select*from aaa where like '%%';) //%代表任意字符(这能like用)
(select*from aaa where like '1';)
运算符号:
+ - * / %
select 1+1; select 1-1; select 1*1; select 1/1; select 9%2;
逻辑运算:
NOT(!)
AND(&)
OR(|)
select*from aaa where a='1' and b='1'; //and=和 必须满足a和b才能被查询
select*from aaa where a='1' or b='1'; //or=或 满足其中一个就能被查询
select*from aaa where not a='1'; //not=不等于
联合查询
联合查询就是将两台语句查询的内容整合到一张表里
select*from table_name a=1 union select 1,1; //无重复
select*from table_name a=1 union all select 1,1; //有重复
子查询
子查询就是优先执行,然后执行其他语句。
select*from user where username in (select username from admin);
//检查admin表和user表是否有用户名相等

浙公网安备 33010602011771号