08_MySql基础

2017-05-26  本文已影响0人  AndroidCat

MySql基础(一)

数据库 & 数据库管理系统
区别
常用的数据库管理系统
数据库 & 数据库管理系统 关系
数据库表
表数据
MySql数据库
安装MySql
选择数据库服务器的启动方式
MySql的登陆
mysql -uroot -proot
//-u表示用户名user
//-p表示密码password
//登陆后输入exit退出mysql
//也可以用户名密码分开写来登陆
mysql -u root -p
//然后再输入密码
SQLYog软件介绍(图形化开发工具)
SQL语句
SQL分类
创建数据库操作
create database 数据库名;#默认字符集为安装数据库时制定的字符集
create database 数据库名 character set 字符集;
 #显示数据库
show databases; 
#删除数据库
drop database 数据库名;
#切换数据库(使用数据库)
use 数据库名;
#查看某个数据库的定义的信息
SHOW CREATE DATABASE 数据库名;
#查看正在使用的数据库
select database();
创建表 & 删除表
create table 表名(
    字段名 数据类型 约束,
    字段名 数据类型 约束,
    字段名 数据类型 约束
);
# 字段名最后一个不能写逗号
drop table 表名;
#查看所有的表
show tables;
#查看表的详细信息
DESC 表名;
create table users (
    uid int primary key auto_increment,   #表名第一个字母+id
    user_name varchar(50),               #varchar需要制定字符长度
    address varchar(50)
);
修改表结构(alter修改)
alter table 表名 add 列名 类型(长度) 约束;
alter table 表名 modify 列名 类型(长度) 约束;
alter table 表名 change 旧列名 新列名 数据类型(长度) 约束;
alter table 表名 drop 列名;
rename table 表名 to 新表名;
alter table 表名 character set 字符集
sql代码保存
表数据操作
#字符串以单引号括起来
#除了数字之外都应该加上单引号,如日期,字符串
#主键可以不用添加值,让其自增长
insert into 表名(字段1,字段2,字段3) values(值1,值2,值3);
insert into 表名 values(全字段的值);
#写入两条 
insert into 表名(字段1,字段2,字段3) values(值1,值2,值3),(值1,值2,值3);
# 下面语句会将所有的数据都改了
update 表名 set 字段1=值1, 字段2=值2, 字段3=值3;
update 表名 set 字段1=值1, 字段2=值2, 字段3=值3 where 条件
id=6等于
id<>6不等于
id<=6小于等于6
and 并且
or  或
not 非
id in (1,4,5,6) id在1,4,5,6里的任意一个
id not in (1,4,5,6) id不在1,4,5,6里的任意一个
select * from 表明 条件
select 字段1,字段2,字段3 from 表名 where 条件
#去掉重复记录
select dictance 字段1 from 表名;
#取别名
select 字段1 as 别名1, 字段2 as 别名2 from 表名 条件;
搜索出来,字段1显示为别名1,字段2显示为别名2,不常用
select zname, zmoney+1000 as zmoney from table1;
1. >    <   <>  >=  <=  =
2. between ... and ...(包含头包含尾)
3. in...    在..里面.如:in (1,2,3,4,5)
4. like通配符   %代表多个字符   _代表一个字符;  如:
    first_name like 'a%';
    first_name like 'a_';
5. is null:判断是否为空
6. and
7. or
8. not
select * from 表名 where 字段名 like '%关键字%'
select * from 表名 where 字段名 like '_____';(5个下划线)
select * from 表名 where 字段名 is not null;
select * from 表名 where not (字段名 is null);
select * from 表名 where 条件 order by 字段名
聚合
select count(*) from 表名;
select count(*) as 'counts' from 表名;
select count(列名) from 表名;
select sum(字段名) from 表名 where 条件;
分组查询:group by 被分组的列名
补充
SELECT * FROM zhangwu WHERE zname LIKE'%支出%' ORDER BY zmoney DESC
SELECT SUM(money) AS total,NAME FROM zhangwu WHERE 
    NAME LIKE '%支出%' GROUP BY NAME HAVING total > 200 ORDER BY total DESC;
上一篇 下一篇

猜你喜欢

热点阅读