SQL Server 入门

首先来认识几个数据库

        master    系统数据库
        model    模型数据库
        tempdb    临时数据库
        msdb    警报日志信息

SQL 创建数据库以及表的格式

创建数据库的格式

create database 数据库名字

创建表的个格式

create table 表名(
	字段值1 数据类型,
    字段值2 数据类型
	....
)

1.在介绍一下几个经常用到的SQL单词

            查询:select
            新建:create
            删除:drop
            数据库:database

            修改数据:update

            删除数据:delete

2.数据库当中需要大家记住的几个数据类型:
 varchar     字符串
 text        文本
 int         整数
 float       小数
 datetime    日期时间
 bit         布尔类型

3.约束
 主键约束   primary key(pk)一个表格里面只能有一个主键
 主键只能有一个,可不可以把两个列设置为主键
标识规范
非空约束
sex约束
默认值约束


--增删改查
--添加数据
--insert into 表名 values(字段1值,字段2值..);
insert into Student values(字段1值,字段2值....)
--给指定字段添加数据:
--insert into 表名(字段,字段...) values(字段1值,字段2值....);
insert into Student(sname,sage) values('某某',18)
--案例1:添加一个学生,添加姓名、性别、地址
insert into Student(sname,ssex,saddress)values('李同学','女','长沙')
insert into Student(sname,sage,saddress)values('陈同学','18','长沙')

--查询数据
--查询所有:*
select * from Student
--查询指定字段的值
--select 字段名,字段名,字段名.. from 表名
--案例:查询学生学号  和 姓名
select sid,sname from Student
--条件查询:where
--查询所有的男生信息
select * from Student where ssex='女';
--案例:查询所有地址是长沙的 学生信息
select * from Student where saddress='长沙'

--and:且 &&
--查询年龄在16到18岁之间的学生信息
select * from Student where sage>=16 and sage<=18
--between and:从。。。到。。。
select * from Student where sage between 17 and 18

--like 模糊查询
	--占位符:_:表示一个字符位置,%:表示任意个字符位置
--找到刘姓的学生
select * from Student where sname like '刘%';
--找到蛋字结尾的两个字姓名的学生信息
select * from Student where sname like '_蛋'
--单纯不显示两个字的
select * from Student where sname like '_' or sname like '___%'

--排序:order by  默认:升序,asc:升序,desc:降序
select * from Student order by sid desc
--len()求字符串长度
select sname,len(sname) '长度' from Student

--起别名
select sid '学号',sname '姓名',ssex '性别' from Student;
select sid as '学号',sname as '姓名',ssex as '性别' from Student;
select '学号'=sid,'姓名'=sname,'性别'=ssex from Student;

select * from Student 

--修改数据
--update...set
--update 表名 set 字段名=值,字段名=值.. where 条件
--把某某的 性别改为男
update Student set ssex='男' where sname='某某'(也叫做表达式)
--把名字为 某某的 年龄改为19,爱好改为唱歌 介绍改为 是个好人
update student set sage=19,slike='唱歌',sinfo='是个好人' where sname='某某'
--把所有人的年龄都加1岁
update Student set sage=sage+1;


--把学号5 的 学生姓名改为张三
update Student set sname='张三' where sid=5 

--删除数据delete
--delete Student [where 条件]
--删除学生的所有信息
delete Student
--删除名字叫狗蛋的
delete Student where sname='狗蛋'
--删除所有名字包含蛋字的
--%:表示任意个字符位置
delete Student where sname like '%蛋%' 


--删除数据库
drop datebase 数据库名

--删除表
drop table 表名
--字符串函数
--找第一次出现的位置(不区分大小写),如果没找到结果为0
select charindex('a','AMySaqalserCourse')
--从指定位置开始往后找第一次出现的位置,如果没找到结果为0
select charindex('a','aMySaqalserCourse',5)

--len:返回字符串的长度
select len('某某')

--lower:转小写
select LOWER('SQL')

--upper:转大写
select upper('sql')

--ltrim:去除左边的空格
select LTRIM('    某某 ')

--rtrim:去除右边的空格
select rtrim('    某某        ')

--right();从右边获取指定个字符
select right('某某',1);

--left();从左边获取指定个字符
select LEFT('嘻嘻嘻,嘿嘿嘿',5)


--replace:替换
select replace('今天是个好日子的是','子','嘿嘿')

--日期函数
--获取当前系统时间
select getdate()

--给时间1999-12-31 添加10天
select dateadd(dd,10,'1999-12-31')
--给当前系统时间添加5个月,也可以减去相对应的月份可以用减  比如(-5)
select dateadd(mm,5,getdate())

--求出两个日期之间相差的日期
--相差的日
select datediff(dd,'1999-02-28','1999-12-1')

select datediff(mm,'1999-1-13','1999-12-1')

select datediff(yy,'1999-12-31',getdate())

--字符串日期:这里不能自动转换
select datediff(mm,'1990-11-31','1999-12-31')

--获取指定日期(年、月、日)
select datename(mi,'1999-1-1 10:12:32')

--获取日期的整数形式
select datepart(mm,getdate())

--获取当前系统时间
select year(getdate())--年
--查询当前系统时间的月
select month(getdate())
--查询当前的系统时间中的天
select day(getdate())

--使用函数格式:
--select 函数名([参数])


select 10+10
--字符串数字会自动转换为数值进行运算
select '10'+10


--求出字符串字节长度(字母占1个、汉字:2)
select datalength('某某')
--字符长度(字符个数)
select len('某某')

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值