当前位置: 首页 > news >正文

做网站什么内容吸引人wordpress摘要插件 帕兰映像

做网站什么内容吸引人,wordpress摘要插件 帕兰映像,微信网站开发教程视频,安卓网页制作软件1. 创建视图 因为越来越多的表连接子查询会十分复杂,所以可以将这些查询or子查询存在视图里,下一次还可以继续使用这些视图,而不需要再写一次查询。 如,在数据库【sql_invoicing】中写一段查询,得到每位客户的…

1. 创建视图       

因为越来越多的表连接+子查询会十分复杂,所以可以将这些查询or子查询存在视图里,下一次还可以继续使用这些视图,而不需要再写一次查询。

        如,在数据库【sql_invoicing】中写一段查询,得到每位客户的总销售额:

use sql_invoicing;select c.client_id,c.name,sum(invoice_total)as total_salesfrom clients cjoin invoices i using (client_id)
group by client_id, name
order by client_id

        这样的查询十分频繁,所以可以直接保存为视图,在其他地方进行使用。

创建视图:

use sql_invoicing;-- 创建视图
create view sales_by_client as 
select c.client_id,c.name,sum(invoice_total)as total_salesfrom clients cjoin invoices i using (client_id)
group by client_id, name
order by client_id

        views中将会显示我们创建的视图

        我们可以将视图视为一个表去进行操作,比如对总的销售进行倒序排序:

select *
from sales_by_client
order by client_id desc;

   注意:⚠️视图中不存储数据,数据只储存于表中

【练习】创建一个视图,显示每一个顾客的结余,命名为“clients_balance”,视图中包含client_id、name、balance

create view clients_balance as 
select c.client_id,c.name,sum(invoice_total - payment_total) as balancefrom clients cjoin invoices i using (client_id)
group by client_id, name
order by client_id;

2. 更改或删除视图

方法一:删除视图重新创建

drop view sales_by_client

方法二:使用REPLACE关键字(推荐)

create or replace view sales_by_client as 
select c.client_id,c.name,sum(invoice_total)as total_salesfrom clients cjoin invoices i using (client_id)
group by client_id, name
order by client_id;

        为了防止视图丢掉,一般情况下创建一个views的文件夹,将创建视图的源代码进行存储(团队),或者按如下图所示的小按钮,视图会以编辑模式打开

3. 可更新视图

可更新视图不包含以下语句(可以在视图中更新数据):

  • distinct
  • aggregate functions(min,max,sum)
  • group by、having
  • union

可更新视图可以使用于insert、update、delete语句中

        创建一个有结余的视图,其中结余=支票总计-支付总计

use sql_invoicing;create or replace view invoices_with_balace as 
select invoice_id,number,client_id,invoice_total,payment_total,invoice_total-payment_total as balance,invoice_date,due_date,payment_date
from invoices 
where invoice_total-payment_total > 0 -- 无法使用balanace,系统会告诉你没有这个列

        这是一个可更细视图,所以可以进行修改:

delete from invoices_with_balace
where invoice_id = 1

4. WITH OPTION CHECK字句

        修改上个视图中的2号,将他的payment_total改成invoice_total

update invoices_with_balace
set payment_total = invoice_total
where invoice_id = 2;

        可以看到2消失了,因为2计算出来的invoice_total-payment_total=0,不在视图范围内,因此不会显示出来。

        如果不想update或delete语句将行从视图中删除,可以在视图代码中进行以下操作:

use sql_invoicing;create or replace view invoices_with_balace as 
select invoice_id,number,client_id,invoice_total,payment_total,invoice_total-payment_total as balance,invoice_date,due_date,payment_date
from invoices 
where invoice_total-payment_total > 0 -- 无法使用balanace,系统会告诉你没有这个列
with check option 

        在执行后可以发现报错,也就是说如果在修改某一行时,其结果可能会导致该行从视图里被删除,就会有报错 

 5. 视图的其他优点

        除了上述视图可以简化查询,第二个优点就是可以减小数据库设计改动的影响。比如有一些操作需要修改列的信息,但是直接动基础表可能会影响后续操作,此时只需要修改视图代码。

        第三个优点是可以使用视图限制基础表访问。比如在视图中可能会使用where字句筛选信息,或者从基础表汇总删除一些列,如果删除表中的一些列,用户就只能通过视图来更新数据,对于一个基础表有很多用户来访问时可以保证基础表的安全。

http://www.yayakq.cn/news/560184/

相关文章:

  • 音乐网站设计外国市场调查 网站建设
  • 什么网站允许搭建男人和女人床上做性视频网站
  • 网站开发视频教学什么是电商包括哪些
  • 农业建设项目管理信息系统网站永清住房和城乡建设部网站
  • 常州建设网站公司网站建站网页模板
  • 河北省住房和城乡建设厅 网站煎蛋无聊图 wordpress
  • 开发企业网站费用房地产十大营销手段
  • 诸暨公司做网站一个网站怎么优化
  • 百度网站收录提交入口全攻略郑州网约车官网
  • 网站设计 网站建设 手机网站建设电商推广平台有哪些
  • 山东省建设备案网站审批wordpress api 自定义认证
  • 辽宁建设厅网站什么时候换的网站设计视频
  • 培训网站建设方案模板seo服务公司推荐
  • 网站做后台企业门户网站建设方案后台管理
  • 网站怎样做漂浮虚拟主机技术
  • 湖南众诚建设 官方网站莱芜都市网直播
  • 在线考试系统网站开发上海排名十大装潢公司
  • wordpress全站ajax方法服务器做网站数据库
  • 电子商务网站推广案例做公司网站的目的是什么
  • 自适应网站开发语言清除wordpress标志
  • 合肥网站建设推广服务多网站绑定域名
  • 交友深圳网站建设网站开发培训课程
  • 网站基本建设投资内容网站建设费用属于管理费用科目
  • 铜陵保障性住房和城乡建设网站除了Joomla用什么做网站好
  • 本溪市城乡住房建设厅网站怎样去网上接网站建设和小程序的单
  • 查网站 备案信息先做网站还是做APP
  • 铜陵做网站的id中怎么导入wordpress
  • 做网站开发使用百分比的好处企业网站的特点是什么
  • 只做早餐的网站filetype ppt 网站建设
  • 免费自助建站系统5000元做百度推广效果怎么样