代码写出来如下:
代码有点多没截完
第二个表如下:
代码如下展示:
第三个表如下:
代码如下:
第四张表
代码如下:
字符串函数
1.charindex 用来寻找这个字在字符串中的位置
select charindex('SQl','my SQL Course' ,1);
返回 4
------------------------------------------------------
2.len 返回传递给他的字符串长度
select len('SQL Server 课程');
返回 :12
-----------------------------------------------------
3.lower 把传递给他的转换为大写
select lower('ABC');
返回:abc
-------------------------------------------------------
4.
upper 把传递给他的转换为小写
select upper('abc');
返回:abcABC
5.ltrim 清除左边空字符
select lyrim(' qwe');
返回:qwe
6.rtrim 清除右边空字符
select ryrim('qwe ');
返回:qwe
7.right (left) 从字符串右边(左边)返回指定的数字字符
select right ('买东西.买东西',3)
返回:买东西
8.replace 替换一个字符串中的字符
select replace('abcc','b','c');
返回:accc
日期函数:1.getdate 取得当前日期
select getdate();
返回:今天日期
2.dateade 将指定的数值添加到指定的日期部分后的日期
select dateadd(mm,4,'2017-7-8')
返回:2017-11-8
3.datediff 两个日期之间的指定日期部分的区别的差值
select datediff (mm,'2017-2-3','2017-3-3')
返回:1
4.yeat/month/day
select year(getdatea())
返回:2022
数学函数
1.abs 取数值表式的绝对值(绝对值都是正数)
select abs(-43)
返回:43
2.ceiling 返回大于或等于所给数字的最小整数 (向上取整)
select ceiling(43.5)
返回:44
3.floor 取向下的整数
select floor(43.5)
返回:43
4.ronud(四舍五入)
select round(23.33,1)
返回:23.3
通过增删改查完成操作
select lyrim(' qwe');
返回:qwe
--2、查询所有用户
select *from tb_users;
--3、查询客房类型表的所有记录
select *from tb_kefang;
--4、查询所有客房的信息
select *from tb_dengji;
--5、查看登记表
select *from tb_type;
--6、查看用户表中所有用户的用户名及密码
select uname ,upwd from tb_users;
--7、查看客房的状态(即只查询客房表的客房编号及状态)
select fid,fmenu from tb_kefang;
--8、查房:在登记表中查所有住在 101 的客户
select *from tb_dengji where fid=101;
--9、在客房表中查找所有的空房间
select *from tb_kefang where fzhutai ='空房';
--10、查询所有入住统计大于100次的房间编号
select *from tb_kefang where fcnt>100;
--11、查询喜来乐在该酒店住了多少天
select kname ,DATEDIFF(DD,ruzhu,GETDATE())from tb_dengji where kname='喜来乐';
--12、查询所有住满的房间,但要求字段名用中文别名
select *from tb_kefang where fzhutai ='住满';
--13、查询所有 2007 年 5 月份入住的客户
select *from tb_dengji where MONTH(ruzhu) between 5 and 6;
--14、客房表按入住次数排降序
select *from tb_kefang order by fcnt desc;
--15、客户表按入住次数排降序,但只显示前三甲
select top 3*from tb_kefang order by fcnt desc;
--16、登记表按入住时间排升序
select *from tb_dengji order by ruzhu ;
--17、登记表中按房间号升序和入住时间降序
select *from tb_dengji order by did , ruzhu desc;
--18、查询刘德华的登录密码
select uname,upwd from tb_users where uname='刘德华';
--19、查询所有有电视的房间(提示:用 like)
select fid from tb_kefang where fmenu like '%电视%';
--上机作业二
--1、查询所有姓张的客户(提示:left())
select *from tb_users where left(uname,1)='张';
--2、查询所有已经退房的记录(提示: is not null)
select *from tb_dengji where tufang is not null;
--3、查询所有客户的名,不含姓 (substring())
--select *from tb_users where SUBSTRING (uname,1,2);
--4、将所有客户的名字变成类似“张某某”再显示,即只显示姓,名用某某代替
update tb_users
set uname=replace(uname,'张学友','张某某');
select *from tb_users