sql-关于数据库视图如何创建

问题描述

关于数据库视图如何创建

有个问题请问各位大神,
背景:数据库中有表TEST,有两个字段NAME和PRICE
需求:创建视图,包含4列,按NAME字段分组,合计PRICE字段,计数PRICE字段,用每组的合计数除以每组的数量
做出来的样子如下:
名称 合计价格 数量 单价(合计/数量)
电脑 600 3 200
笔记本 300 3 100
问题:请问该如何写SQL语句?

解决方案

 create view v_test
 as
 select name 名称,sum(price)  合计价格,count(*) 数量,avg(price) 单价 from test group by name

解决方案二:

不好意思,我例子举的太简单,有点问题,如果单价不用avg函数,而要用分组后的合计数去除分组后的数量,请问该怎么写?

解决方案三:

 create view v_test
as
select name as '名称',sum(price) as '价格',count(price) as '数量',
sum(price)/count(price) as '单价(合计/数量)'
from test group by name
时间: 2024-11-08 22:08:33

sql-关于数据库视图如何创建的相关文章

乱谈SQL Server数据库视图

数据库里存储着大量的数据,但是为了保证数据的安全也为了方便,并不是所有用户的都可浏览所有数据.为此SQL Server里用权限.角色.视图来解决这一系列问题.本篇博客我先介绍视图. 概念:视图是从一个或多个关联表中派生出的一个虚拟表,换句话说就是以一个或多个表中的部分数据组成的虚拟"表". 特点: 一.分割数据,简化视点:即通过SELECT和WHERE语句来选择你关心的数据,而去除无关的数据. 二.简化操作:视图可以避免对表的访问和存取操作,同时视图是一个很好的查询窗口. 三.保护数据

Visual C#中动态操作SQL Server数据库

在编写数据库应用程序的时候,我们可以通过SQL语句来动态创建.修改数据库以及其中的对象.本文我就向大家介绍如何运用Visual C#来动态操作SQL Server数据库,其中包括如何创建一个SQL Server数据库以及如何创建其中的表.存储过程.视图.索引之类的数据库对象.本文还介绍了如何动态地修改表的模式,如何从表.存储过程以及视图中读取数据并显示在应用程序的数据库控件中. 我们知道SQL语句在操作数据库时运用得最多的是Select.Insert.Update和Delete等对于数据的操作,

《数据库基础及实践技术——SQL Server 2008》一3.1 SQL Server数据库概述

3.1 SQL Server数据库概述 SQL Server 2008中的数据库由包含数据的表集合以及其他对象(如视图.索引.存储过程等)组成,目的是为执行与数据有关的活动提供支持.SQL Server支持在一个实例中创建多个数据库,每个数据库在物理和逻辑上都是独立的,相互之间没有影响.每个数据库存储相关的数据.例如,可以用一个数据库存储商品及销售信息,用另一个数据库存储人事信息. 从数据库的应用和管理角度来看,SQL Server将数据库分为两大类:系统数据库和用户数据库.系统数据库是SQL

在打包程序中自动安装SQL Server数据库 .

原文:在打包程序中自动安装SQL Server数据库 . 1.创建安装项目"Setup1"安装项目 在"文件"菜单上指向"添加项目",然后选择"新建项目". 在"添加新项目"对话框中,选择"项目类型"窗格中的"安装和部署项目",然后选择"模板"窗格中的"安装项目".在"名称"框中键入 "setup1

动态创建SQL Server数据库、表、存储过程

server|创建|存储过程|动态|数据|数据库 下面是利用SQL语句创建数据库.表.存储过程.视图.索引.规则.修改表.查看数据等的方法.所要增加的控件如下: Imports System.DataImports System.Data.SqlClient Public Class Form1  Inherits System.Windows.Forms.Form  Private ConnectionString As String = "Data Source=.;Initial Cata

简析SQL Server数据库用视图来处理复杂的数据查询关系_MsSql

SQL Server数据库用视图来处理复杂的数据查询关系是本文我们主要要介绍的内容,该内容是这样想到的:在辅助教务系统那块的时候,我做的一个页面是对单个老师和整个学院老师的工作量查询,这个操作设计到了三个本数据库中的表和一个不同数据库中的一个教师信息表,如果用普通的SQL语句是非常难实现的,由于我刚开始做的视频播放系统,数据库的表相对比较少,没有涉及到这么复杂的处理关系,刚开始感觉很难. 后来想到用视图可以解决多个表的复杂关系,但是另外一张表是不同数据库的,是否依然能进行操作,经过测试之后,居然

SQL Server数据库用视图来处理复杂的数据查询关系

SQL Server数据库用视图来处理复杂的数据查询关系是本文我们主要要介绍的内容,该内容是这样想到的:在辅助教务系统那块的时候,我做的一个页面是对单个老师和整个学院老师的工作量查询,这个操作设计到了三个本数据库中的表和一个不同数据库中的一个教师信息表,如果用普通的SQL语句是非常难实现的,由于我刚开始做的视频播放系统,数据库的表相对比较少,没有涉及到这么复杂的处理关系,刚开始感觉很难. 后来想到用视图可以解决多个表的复杂关系,但是另外一张表是不同数据库的,是否依然能进行操作,经过测试之 后,居

简析SQL Server数据库用视图来处理复杂的数据查询关系

SQL Server数据库用视图来处理复杂的数据查询关系是本文我们主要要介绍的内容,该内容是这样想到的:在辅助教务系统那块的时候,我做的一个页面是对单个老师和整个学院老师的工作量查询,这个操作设计到了三个本数据库中的表和一个不同数据库中的一个教师信息表,如果用普通的SQL语句是非常难实现的,由于我刚开始做的视频播放系统,数据库的表相对比较少,没有涉及到这么复杂的处理关系,刚开始感觉很难. 后来想到用视图可以解决多个表的复杂关系,但是另外一张表是不同数据库的,是否依然能进行操作,经过测试之后,居然

python学习-python创建sql server 数据库问题求助

问题描述 python创建sql server 数据库问题求助 用python来创建一个数据库,如果存在就不用创建,如果不存在就创建一个: cursor.execute('if not exists(select * from master..sysdatabases where name = python) create database python;') 这样写编译不过,求助 解决方案 先用sql语句判断一下表格,不在,再调用创建