志在指尖
用双手敲打未来

mysql增删改查语句(例子分析常用方法)

mysql增删改查语句

1.mysql增修正查操作语句:
1)假如想在一个现已建好的表中增加一列,可以用以下代码:
altertablet1addcolumnaddrvarchar(20)notnull;
2)这条语句会向已有的表t1中参加一列,这一列在表的最终一列方位。假如我们希望增加在指定的一列,可以用:
altertablet1addcolumnaddrvarchar(20)notnullafteruser1;
留意,上面这个指令的意思是说增加addr列到user1这一列后边。假如想增加到第一列的话,可以用:
altertablet1addcolumnaddrvarchar(20)notnullfirst;
3)将表t1中,列名name改为firstname
altertablet1changenamefirstnamechar;
4)将表t1中,列名为def的列删去
altertablet1dropcolumndef;
5)仿制table表
createtable新表名(selectID,name,number,numberidfrom要仿制的表名);
6)查看表的各种数据类型
describe`t1`等同于desct1
7)查看表的已存数据
select*from表名或selectid,name,number,numberidfrom表名
8)增加数据
insertinto表名(ID,name,number,numberid)values(1,’mysql’,220,1),(2,’HTML’,160,1),(3,’python’,230,1);
9)删去数据
deletefrom表名where条件;
10)修正数据
update表名setnumberid=2where条件
11)降序摆放
selectid,name,number,numberidfrom表名orderbyiddesc;
12)增加别号
select(列名)’别号’,(列名)as’别号’from表名;
2.获取前10条数据:
select*fromt1limit10;
3.完全相同的数据,只更新第一条:
updatet4setId_O=1whereorderno=77895orderbyId_Odesclimit1;
4.修正表名(把t2修正成t3):
altertablet2renametot3;
5.把t3表中重复的数据删掉只剩下一行:
1)先查询重复的数据:
select*fromt3whereOrderDatein(selectOrderDatefromt3groupbyOrderDatehavingcount(*)>1);
2)把重复的数据去重先保存到一张临时表中:
createtabletmpselectdistinct*fromt3whereOrderDatein(selectOrderDatefromt3groupbyOrderDate,O_Idhavingcount(*)>1);
3)删去t3表中一切重复的数据:
deletefromt3whereOrderDatein(selectt.OrderDatefrom(selectOrderDatefromt3groupbyOrderDatehavingcount(*)>1)t);
4)把处理后没有重复数据的tmp表中值从头放入到t3表中:
insertintot3select*fromtmp;
6.在一个外部表中导入数据,由于某些原因第一次只导入了一部分,但很难判断具体方位,再接着导入一切数据后,怎样删去重复字段
1)增加自增列(first是在第一列增加):
altertablet1addcolumnidint(11)primarykeyauto_incrementfirst;
2)删去重复数据:
deletefromt1whereidnotin(selecttt.idfrom(selectmax(id)asidfromt1groupbyOrderDate,OrderPrice)astt);
3)删去自增列id
altertablet1dropcolumnid;
7.查询语句的灵敏使用:
1)查询全部的记载:
select*fromt1;
2)查第一条记载:
select*fromt1limit1;
3)查前面两条记载:
select*fromt1limit0,2;
4)查第二和第三条记载:
select*fromt1limit1,2;
5)查最终一条记载:
select*fromt1orderbyidDESClimit1;mysql

mysql例子分析常用方法

在运用mysql中的过程中,会遇到各种查询操作,包含什么跨表查询,进行分组求差,求和等等。
从前我记得写过最长一个sql语句长达三屏,那一次泪崩我了。废话不多说,直接上指令:
SQL中的一些界说:
DDL:数据界说言语,包含createalterdroptruncate指令;
DML:数据操作言语,包含insert,update,delete指令;
DQL:数据查询言语,也便是select指令;
SQL中的办法:
count(*),计数办法,其间*号能够换成某一列的姓名,该办法疏忽空值null,也便是说null不在计算之内;
sum(列名),求和办法,该办法疏忽空值null,也便是说null不在计算之内;
avg(列名),求平均值,该办法疏忽空值null,也便是说null不在计算之内;假如在计算过程中,会有空值,主张写成:avg(nvl(列名,0))意思便是说假如碰到该列为空,则赋值为0;
nvl(列名,值),假如该列为空,则取后边的值;
max(列名),求某一列的最大值,疏忽空值;
min(列名),求某一列的最小值,疏忽空值;
groupby列名,通过什么列分组,一般多用于计数,求和等;
groupby列名having,groupby能够单独运用,也能够和having组合运用,意思便是将groupby后的成果进行筛选,having后边跟的条件必需是组函数(sum\avg\count等);
initcap,将首字母转换成大写;
length(),取长度;
lpad(列名,长度,补齐字符),左补丁函数,便是将某一列假如不行长的话,左边补齐符号;
rpad(列名,长度,补齐字符),右补丁函数,和左补丁相反;
replace(原字符,新字符),字符替换函数;
subStr(),字符截取;
trim(列名),去除前后空格;
STR_TO_DATE(字符,日期格局),将字符转换成日期格局;
date_format(列名,字符格局),将日期转换成字符串;其间字符格局一般为:%Y-%m-%d%h:%i:%s,更多格局可在百度查找一下;
isnull/isnotnull,在数据库中假如查询为空或许不为空用此,而不是!=null
unionall,两个成果的并集,不去重,不排序;
union,两个成果的并集,去重,排序;
distinct,将成果去重,只能跟在select后边;
between……and……,该函数为一个闭区间;
join,将两个表连在一起,用于跨表查询;
join……on……在运用join的过程中,on后边是判别条件;

未经允许不得转载:IT技术网站 » mysql增删改查语句(例子分析常用方法)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载