您的位置:首页 > 数据库 > MySQL

mysql基本操作

2016-03-07 17:54 537 查看
mySQL

=============================================

DML;

SELECT - 从数据库中提取数据

UPDATE - 更新数据库中的数据

DELETE - 从数据库中删除数据

INSERT INTO - 向数据库中插入新数据

DDL;

CREATE DATABASE - 创建新数据库

ALTER DATABASE - 修改数据库

CREATE TABLE - 创建新表

ALTER TABLE - 变更(改变)数据库表

DROP TABLE - 删除表

CREATE INDEX - 创建索引(搜索键)

DROP INDEX - 删除索引

操作符select

----------------------------------

select * from table_name -全表扫描

distinct -去掉重复项 select distinct * from table_name

where子句

where -有条件选择 select * from table_name where column_name='xx'

and -且得关系(交集),连接条件 select * from table_name where column_name1='xx' and column_name2='xx1'

or -或的关系(并集) select * from table_name where column_name1='xx' or column_name2='xx1'

order by asc(可以不写) -对结果集排序。默认顺序排序。select * from table_name order by column_name

order by desc -对结果集排序。逆序排序。select * from table_name order by column_name desc

like -模式匹配(%定义通配符)。select * from table_name where column_name like'aa%';

in -允许where子句中有多个值。select * from table_name where column_name in(value1,value2,...);

between and -,获取闭区间数据(not表示补集),where子句中使用,select * from table_name where column_name between 'value1' and 'value2'

别名

select * from table_name as newName - 使用表别名(oracle不需要as)

select column_name as newName from table_name as -使用列别名

join多表关联:

join(inner join) -内连接,返回两个表都有的,并集 。

select * from table_name1 inner join table_name2 on table_name1.column_name=table_name2.column_name;

left join -左连接,返回两个表都有的,还有左表有右表没有的, 

right join -右连接,返回两个表都有的,还有右表有左表没有的, 

full join -全连接,只要其中一个表有即可。

独立集(只是a独有的部分) SELECT * FROM a left outer JOIN b ON a.id=b.id WHERE (b.id IS null)

操作符insert into和update和delete

----------------------------------

insert into table_name(column_name1) values(column_name1) -插入选择字段

insert into table_name() values(column_name1) -插入全表

update table_name set column_name='新值' where column_name='定位值' -更新数据

delete from table_name where column_name='xx' -删除数据

操作符union

----------------------------------

union 合并两个或多个sql语句的结果集。不允许重复的值出现。

union all ,允许重复的值出现。

SELECT column_name(s) FROM table_name1

UNION

SELECT column_name(s) FROM table_name2

操作符select into 

----------------------------------

select into 创建表的备份附件(oracle不能用)

select * into new_tableName from old_tableName

SELECT *

INTO Persons IN 'Backup.mdb'

FROM Persons

oracle可以用:create table new_tableName as (select * from old_tableName)

操作符create table

----------------------------------

数据类型:

char(10) 定长,查询快,浪费空间 最大2000字符

varchar2(20) 变长,查询慢,节省空间 最大4000

number

number(5,2)五位数,2位有效小数

number(5) 五位整数

date 时间类型(日-月-年)(01-5月-05)

timestamp 时间类型比date精确

blob 二进制类型 图片声音

约束:

not null -非空约束,not null

unique -唯一约束,unique,CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)

primark key -主键约束 ,primark key CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName)

forein key -外键 ,Id_P int FOREIGN KEY REFERENCES Persons(Id_P)

check -检查约束 ,check (id>0)

default -默认约束 ,default ‘xx’

AUTO_INCREMENT -自动创建主键字段的值

操作符create index

----------------------------------

create index index_name on table_name (column_name)

CREATE INDEX PersonIndex ON Person (LastName DESC) --降序索引

drop index index_name

操作符create view

----------------------------------

create view view_name as SELECT column_name(s) FROM table_name WHERE condition

drop view view_name

操作符create database

----------------------------------

create database db_name

操作符drop

----------------------------------

delete table table_name -删除数据,可以回滚

truncate table table_name -清空数据(不可以回滚),不删除表结构

drop table table_name -删除数据表(删除内容和定义,释放空间。)

drop index index_name -删除索引

drop view view _name -删除视图

drop database db_name -删除数据库

操作符alter

----------------------------------

alter table table_name add column_name datatype -添加字段

alter table table_name drop column column_name -删除字段

alter table MYRESULTTABLE_201411170930 rename to MYRESULTTABLE;--修改表名

操作符case

----------------------------------

select case column_name

when 'x1' then 'y1'

when 'x2' then 'y2'

else 'y3' end

函数

----------------------------------

avg() -平均值 select avg(column_name) from table_name

count(column_name) -返回行数(null排除)

count(distinct column_name) -返回行数(重复项和n
4000
ull排除)

max() -返回列最大值

min() -返回列最小值

sum() - 返回数值列的总和

sum(distinct) - 返回数值列的总和(去重)

group by -按照指定列分组,select id ,avg(column_name) from table_name group by id
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: