数据库常用增删改查语句「终于解决」

数据库常用增删改查语句「终于解决」mysql-uroot-p1、显示数据库表showdatabases;2、建库createdatabase建的数据库名3、指定使用的数据库use数据库名4、显示数据库下的表showtables5、建表createtable新建的表名(列的名字列的类型NOTNULL,…,primarykey(要设为主键的列名字));primary是为主键约束,设为主键的数据是不可以重复NOTNULL是不能为空的约束,这个设置的数据在插入数据的时候是不可以为空6、

大家好,欢迎来到IT知识分享网。

mysql -u root -p
1、显示数据库表
show databases;
2、建库
create database 建的数据库名

3、指定使用的数据库
use 数据库名

4、显示数据库下的表
show tables

5、建表
create table 新建的表名(列的名字 列的类型 NOT NULL, …, primary key(要设为主键的列名字));
primary 是为主键约束,设为主键的数据是不可以重复
NOT NULL 是不能为空的约束,这个设置的数据在插入数据的时候是不可以为空

6、更新表结构
alter table 表名 add column 列的名字 列的类型;

7、删除表结构
alter table 表名 drop column 列的名字;

8、删除库
drop database 库名

9、删除表
drop table 表名字

10、查询表结构
desc table 表名;

11、数据库类型
a、整型
tinyint(m) 1个字节 范围(-128~127)
smallint(m) 2个字节 范围(-32768~32767)
mediumint(m) 3个字节 范围(-8388608~8388607)
int(m) 4个字节 范围(-2147483648~2147483647)
bigint(m) 8个字节 范围(±9.22*10的18次方)

b、浮点型(float 和 double)
float(m,d) 单精度浮点型 8位精度(4个字节) m总个数,d小数位
double(m,d) 双精度浮点型 16位精度(8个字节) m总个数,d小数位

c、字符串(char,varchar,tinytext,text,mediumtext,longtext)
char(n) 固定长度,最多255个字符,可指定长度
varchar(n) 固定长度,最多65535个字符,可指定长度
tinytext 可变长度,最多255个字符
text 可变长度,最多65535个字符
mediumtext 可变长度,最多2的24次方-1个字符
longtext 可变长度,最多2的32次方-1个字符

d、日期和时间类型 datetime、date、timestamp、time和year
date 日期’2008-12-2’
time 时间’12:25:36’
datetime 日期时间’2008-12-2 22:06:44’
timestamp 如果未给时间,则自动存储记录修改时间为当前系统时间

e、二进制数据(Blob)
存储二进制数据,用来存储大文件 多媒体文件

12、向表中添加数据
insert into 表的名字 (列名1,列名2,…) values (值1,值2,…)
在插入的数据每一列都有值的时候,就可以直接用如下语句
insert into values (值1,值2,…)

13、更新数据
将整个列的数据更新:upadte 表名 set 列名=表达式
更新指定条件的的数据: update 表名 set 列名=表达式 where 条件表达式
多列同时更新:update 表名 set 列名1=表达式1,列名2=表达式2,… where 条件表达式

14、删除表中的数据
将表完全删除,包括数据和结构: drop table 表名
清空表,删除表内所有数据(表中有多少条记录就执行多少次删除sql语句):delete from 表名
只删除符合条件的数据:delete from 表名 where 条件表达式
清空表,尽量使用(只执行两条sql语句删除和创建同表名的空表):truncate table 表名;

15、查询数据
查询全部数据 select * from 要查询的表名
查询某一个列的数据: select 列名 from 表名
查询多个列名的数据: select 列名1,列名2… from 表名

查询是给列设定别名通过as关键字 别名可以是汉子,需要加双引号
select 列名 as “别名” from 表名

从查询的数据中删除重复的数据: select distinct 列名1,列名2,… from 表名
查询符合条件的数据:select 列名 from 表名 where 条件表达式

查询时修改查询的结果: select 列名±*/运算符 from 表名

模糊查询: select 列名 from 表名 where 列名 like “%模糊的字%”
%代表在模糊查询的字的前面或后面有其他字

查询数据在指定条件中的数据: select 列名 from 表名 where 列名 in(指定数据1,指定数据2,指定数据3,…)

查询符合多个条件的数据:
select 列名 from 表名 where 条件1 and 条件2
select 列名 from 表名 where 条件1 or 条件2

查询聚合函数
计算查询数据的数量: select count(列名) from 表名
计算查询数据的总和:select sum(列名) from 表名
计算查询数据的平均值: select avg(列名) from 表名
筛选出查询数据中的最大值: select max(列名) from 表名
筛选出查询数据中的最小值: select min(列名) from 表名

分组合过滤
对查询出的数据进行分组: select 列名1,列名2,… from 表名 group by 要按分组的列名
对聚合查询的数据进行过滤: select 列名 from 表名 group by 列名 having 过滤的表达式

查询的数据排序
对查询的结果排序,默认为升序asc, 降序是desc
select 列名 from 表名 order by 排序的列名1,排序的列名2
select 列名 from 表名 order by 排序的列名1 asc,排序的列名2 desc

多个表连接查询
内连接(inner) : select * from 表名1 表名1的别名 inner 内连接的表名2 表名2的别名 on 两个表关联查询的条件
查询左边表的数据都显示、右边的表的数据有没有都可以使用 left join:
select * from 表名1 表名1的别名 left join 表名2 表名2的别名 on 两个表关联的查询条件
查询右边表的数据都显示、左边的表的数据有没有都可以使用 right join:
select * from 表名1 表名1的别名 right join 表名2 表名2的别名 on 两个表关联的查询条件
查询左右表所有的数据,没有的显示null 使用full join
select * from 表名1 表名1的别名 full join 表名2 表名2的别名 on 两个表关联的查询条件

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/25256.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信