数据库中的子查询和视图以及存储过程

---查询所有内容
select * from T_Product
---
删除重复行distinct
select distinct T_Product.P_Id,T_Product.p_Name from T_Order inner join T_Product on T_Order.P_Id=T_Product.P_Id
---子查询
select O_Id,o.O_Numb,o.P_Id,o.O_Date from T_Order o where o.P_Id in(select p.P_Id from T_Product p where p.p_Name='螺丝' or p.p_Name='钉子' )
---查询最近时间的订单信息,根据子查询查出日期
---order by 是排序,desc是降序,asc是升序,TOP 子句用于规定要返回的记录的数目。top 后可以写数字表示选出前几个,top后也可以写百分数
select * from T_Order where O_Date= (select top 1 O_Date  from T_Order order by(O_Date) desc)

----在数据库中进行类型转换 cast方法格式
select '产品编号:'+ CAST(p.P_Id as varchar) as P_Id from T_Product p
----第二种方法 convert方法不仅可以进行数据转换而且可以制定日期的格式
select '产品编号:'+CONVERT(varchar,p.P_Id) from T_Product p
select'订单日期:'+CONVERT(varchar,o.O_Date,111) as O_Date from T_Order o
----创建视图
go
create view student_vw
as
select s.Stu_Name,s.Stu_Age  from T_Student s
-----查看视图
select * from student_vw   


--创建简单存储过程
go
create proc InsertUser_pro
as
insert into T_Student(Stu_Name,Stu_Mobile,Stu_Age,Stu_Address,Stu_Email)
values('小李','345465','20','保定','12345678@qq.com')
--创建带输入参数的存储过程
go
create proc InsertUser_pro
@name varchar(16),
@mobile varchar(16),
@age int,
@address varchar(32),
@email varchar(16)
as
insert into T_Student(Stu_Name,Stu_Mobile,Stu_Age,Stu_Address,Stu_Email)
values(@name,@mobile,@age,@address,@email)
 ----调用带参数的存储过程
 exec InsertUser_pro '王五','1233556',15,'邢台','wangwu@163.com'
 

在创建视图和存储过程时,在其语句前需要有go关键字。

何时使用视图
1)有些数据不想给对方,但是又不想让对方知道你不想给,所以干脆做个视图,视图的明明尽量像一张表的名字。
2)简化查询,将复杂的查询放到视图中,以后就查询这个视图就可以了。

5.表中数据发生变化,视图中也会随之更新,但是视图中的数据发生变化,表中数据不一定就会发生,比如更改的视图是连接查询的结果,而且更改的字段在多张表中都有,则只有一张表的字段值会更改,其余的不变化。

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猿猿网页设计(yywyss365)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值