admin管理员组

文章数量:1794759

SQL server常用的最基础语句汇总(必会!)

SQL server常用的最基础语句汇总(必会!)

一、数据库

  • 1 修改数据库名&删除数据库
  • alter database tablename_old modify name = tablename_new;

    drop database tablename;

    二、数据类型认识

    2.1 数字类型

    2.2 日期类型

    2.3 字符串类型

    三、修改命令——alter

    3.1 修改字段类型

    alter table tableA alter column name varchar(10);

    alter table tableA alter column age float not null;

    3.1 新增&删除主键

    alter table tableA add constraint KID(主键约束名)  primary key(ID);

    alter table tableA drop constraint KID;

    3.1 更改&添加字段名

    exec sp_rename 'tableA .age','userage','column';

    alter table tableA add grade varchar(10) not null;

    四、主键&外键(略)

    五、插入新增记录——insert

    5.1 插入新增行

    insert into tableA ('column1','column2','column3','column4') values ('value1','value2','value3','value4'),('value1','value2','value3','value4'),...('value1','value2','value3','value4');

    insert into tableA ('column1','column2','column3','column4')  select column1,column2,column3,column4 from tableB ;

    六、修改记录——updata

    6.1 updata tableA set  字段 = 值  where  字段=值(限制条件)

     七、删除记录——delete

    7.1 delete from  tableA where 字段=值(限制条件)

    八、条件限制——where

    8.1 精确条件

    where 字段 = '值'

    8.2 模糊条件

    where 字段  like '%值%'

    九、between&not between语法

    select * from tableA where ID between 10 and 20;

    select * from tableA where ID  not  between 10 and 20;

    十、子查询in&not in语法

    select * from tableA where name in  ('zhangsan',''lisi) ;

    select * from tableA where name not  in  ('zhangsan',''lisi);

    select * from tableA where name   in  (select  name  from tableB );

    select * from tableA where name  not  in  (select  name  from tableB );

    十一、返回结果排序——order by

    select * from  tableA  order by ID desc; #按照ID降序

    select * from  tableA  order by ID asc ;#按照ID升序

    select * from  tableA  order by ID asc ,age desc ;#先按照ID升序,再在ID升序的基础上按照age降序;

    十二、 关联查询

    12.1 inner join——内连接

    select * from tableA inner join tableB on tableA.ID = tableB.ID;

    12.2 left join——左连接

    select * from tableA left join tableB on tableA.ID = tableB.ID;

    12.3 right join——右连接

    select * from tableA right join tableB on tableA.ID = tableB.ID;

    12.4 full join——全连接

    select * from tableA full join tableB on tableA.ID = tableB.ID;

    十二、 函数

    12.1 返回字符串字符数——len()

    12.2 返回当前时间——getdate()、getutcdata()

    12.3 转换日期格式——convert(datetype,date_to_be_converted,style)

    convert(verchar(10),getdate(),110)

    12.4 计算时间差——datediff(datepart,startdate,enddate)

    #datepart常取值:day,month,year,hour,minute

    select datediff(day,'2020-05-01','2020-05-03') ; #结果2

    select datediff(month,'2020-05-01','2020-06-03') ; #结果1

    12.5 增加日期——dateadd(datepart,number,date)

    select dateadd(day,3,'2020-05-01') ; #结果2020-05-04

    select dateadd(day,-3,'2020-05-01') ; #结果2020-04-28

    12.6 获取日期单独部分——datepart(datepart,number,date)

    select datepart(day,getdate());#select datepart(dd,getdate());返回类型为int整型

    select datename(day,getdate());#select datename(dd,getdate());返回类型为varchar型

    select day(getdate();select month(getdate();select year(getdate();

    12.7 返回字符在另一个字符串中的位置——charindex()、patindex()

    select charindex('cc','aabbccdd');#返回结果5;

    select patindex('%dd','aabbccdd');#返回结果7(%dd:是否以dd结尾);

    12.8 删除&替换指定长度的字符——stuff(字符串,开始位置,长度,替代字符串)

    select stuff('aabbccdd',5,2,'ee');#返回结果aabbeedd;

    12.9 截取指定长度字符串——substring(字符串,开始位置,长度)

    select substring('aabbccdd',5,2);#返回结果cc;

    12.10 截取字符串——left()、right()

    select left('aabbccdd',5);#返回结果aabbc;

    select right('aabbccdd',5);#返回结果bccdd;

    12.10 字符串除空格——ltrim()、rtrim()

    select ltrim('    aabbccdd    ');#返回结果'aabbccdd    ';

    select rtrim('    aabbccdd    ');#返回结果'    aabbccdd ';

    12.11 字符串大小写转换——lower()、upper()

    select lower('Abc');#返回结果abc

    select upper('Abc');#返回结果ABC

    12.12 字符串替换——replace()

    select replace('aabbccddcc','cc','ee');#返回结果aabbeeddee;

    12.13 字符串重复——replicate() 、space()

    select replicate('aab',3);#返回结果aabaabaab;

    select 'a'+space(5)+'a';#返回结果'a     a';

    12.14 倒置字符串位置——reverse()

     select reverse('aab');#返回结果baa;

    12.15 改变字段类型——cast()

     select cast(123 as varchar(10));#整型转化成字符型;

     select cast(12.5 as decimal(18,2));#返回结果12.50;

    12.16 条件判断转换函数——case()

    select case when sex='1' then '女' else '男' end as sex from tableA; 

     

     

     

     

     

    本文标签: 语句必会常用基础SQL