MySql数据库常用基础语法

本文详细介绍了MySQL数据库的基础语法,包括数据类型如int和varchar,以及创建、删除数据库、表的操作,如使用CREATE DATABASE, DROP DATABASE和CREATE TABLE。还涵盖了数据插入、查询(SELECT语句、带条件查询等)、更新、删除和排序的方法。
摘要由CSDN通过智能技术生成

MySql数据库常用基础语法

sql语法基本规范:

  1. 不区分大小写
  2. 每句sql都要以 ;结尾

数据库中常用的数据类型:
int 数字的类型
varchar(50) 字符串 不定长 字节65535
char(20) 字符串 定长的字节 255个字节 常用于性别 男、女
data 日期 格式

创建数据库

-- create database  数据库名;
CREATE DATABASE school;

删除数据库

-- drop database  数据库名;
drop database school;

新建数据表

对应数据库内操作:

create table 表名(
	字段名 字段类型 约束条件,
	字段名 字段类型,
	...
	字段名 字段类型
	);

约束条件: not null(不为空)、primark key(主键)、auto_increment(自增)、default(默认值)
– 设置了主键 主键不能为空,自增一定要是主键
例如:创建拥有id、name、age、gender这几个字段的学生表

CREATE TABLE student(
	id int primary key auto_increment,
	name varchar(20),
	age INT,
	gender char(20) DEFAULT('男')
	);

数据库外操作:

create table 数据库名.表名(
	字段名 字段类型,
	字段名 字段类型,
	...
	字段名 字段类型
	)charset=utf8;    

如果创建数据库的时候数据库的编码格式没有选择utf-8,表内录入中文可能会显示乱码,创建表时可以加上charset=utf8
例如:创建拥有id、name、age、gender这几个字段的学生表

CREATE TABLE school.student(
    id int primary key auto_increment,
    name varchar(20)
    age int,
    gender char(20)
)charset=utf8;

插入数据
-表里的所有字段的对应数据都要添加进去

insert into 表名 values(字段数据,字段数据,...字段数据);

例如:添加学生信息到学生表

insert into school.student values(1,'张三'13'男');

-只添加部分字段

insert  into 表名(字段名,字段名,...字段名) values(字段数据,字段数据,...字段数据);

例如:添加学生信息到学生表

insert into school.student(name,age,sex) values('李四',14,'男');

-一次性添加多个数据

insert into 表名(字段名,字段名,...字段名) values(字段数据,字段数据,...字段数据),(字段数据,字段数据,...字段数据),...(字段数据,字段数据,...字段数据);

例如:添加多名学生信息到学生表

INSERT INTO school.student(name,age,sex) values
	('胡蕊',14,'女'),
	('史浩',14,'男'),
	('于桑',14,'女');

查询语句
–查询表中的所有的数据

select * from 表名;

例如:查询学生表所有信息

SELECT * FROM school.student;

–查询表中的部分字段数据

select 字段名,字段名,...字段名 from 表名;

例如:查询学生表的id、name、age这几个字段的数据

select id,name,age from school.student;

–带条件查询

select * from 表名 where 条件;

–比较运算符 > = < >= <= != <>(表示不等于)

例如:查询学生表中的所有男生数据

select * from student where gender='男';

-and 和 同时满足多个条件

select * from 表名 where 条件 and 条件...and 条件;

例如:查询学生表中的所有年龄小于14的男生数据

select * from student where gender='男' and age<14;

–or 或者 满足其中一个条件

select * from 表名 where 条件 or 条件...or 条件;

例如:查询学生表中的所有年龄小于13或大于14的学生数据

select * from student where age<13 or age>14;

–not 非 条件不成立

select * from 表名 where not 条件;

例如:查询学生表中的所有年龄不小于15的学生数据

select * from student where not age<15;

–查询为空的数据 is null

select * from 表名 where 字段名 is null;

例如:查询学生表中的所有年龄字段为空的数据

select * from student where age is null;

– 排序 order by 字段名 asc/desc 默认是asc 升序,desc是降序

查询学生表所有数据按年龄升序排列

select * from student order by age;

查询学生表所有数据按年龄降序排列

select * from student order by age desc

查询学生表,先按年龄升序排列,同样年龄的按id降序排列

select * from student order by age asc,id desc;

修改语句
–修改表内整个字段的所有内容

update 表名 set 字段名=修改的内容;  

例如:将学生表中的年龄修改为13

update school.student set age=13;

–修改符合一种条件的内容

update 表名 set 字段名=修改的内容 where 条件(如:字段名=字段数据)

例如:将学生表中id=3的学生的年龄修改为14

update school.student set age=14 where id=3;

–修改符合多个条件的内容
例如:将学生表中id大于9的男生的年龄修改为14

update school.student set age=14 where gender='男' and id>9;

删除
DELETE 用于删除表内数据,可以在后面加WHERE条件
–删除表中的所有数据

delete from 表名;

例如:删除学生表内的所有数据

delete from school.student;

–删除表中符合条件的数据

delete from 表名 where 条件

例如:删除学生表中id为13的学生数据

delete from school.student where id=13;

DROP 直接删除表结构
–删除表结构

drop table 表名;

例如:删除学生表

drop table school.student;

TRUNCATE 用于删除表内数据,不能加WHERE条件
–删除表内数据

truncate table 表名;

例如:清除学生表内的所有数据

truncate table school.student;

三种删除方法中,DELETE执行速度最慢,DROP执行速度最快。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值