首页 >>  正文

调用存储过程的sql语句

来源:baiyundou.net   日期:2024-09-21

强大的BI平台技术及政务智能BI应用,为政府行政管理和服务提供了新的工具和手段。具体怎么实现?这篇文章里,作者就总结了政务智能BI的建设,一起来看看本文的梳理和拆解。

现代信息技术发展到今天,政务智能BI的应用到政府的行政管理和公众服务开辟了信息技术的重要应用领域,同时也为政府行政管理和服务提供了新的工具和手段。

政务活动与数据治理技术的结合,一方面扩大了智能BI行业的市场,在新的需求下促进智能BI不断的往纵深的发展和完善;另一方面,采用强大的BI平台技术,大数据分析技术,使行政管理和公众服务增加了新的内容,改变了行政方式,提高了行政效率。

一、BI平台建设的背景

伴随着政务信息化的发展,BI也也逐步成为政府办公的标配,在大数据、数据中台的生态环境的加成下,政务BI平台以大数据基础为支撑,提供了便捷易用的数据可视化操作与灵活高效的多维分析能力。

下面我们先聊一下什么是政务BI,政务BI起源于商业BI,从技术层面来说,都是指使用数据仓库技术、OLAP在线分析处理技术,数据挖掘和展现技术进行数据的“采,存,管,用”,从而实现政务价值。

简单来说,政务BI也是一款数据工具,一款可以进行数据分析并输出分析成果的工具,或者说是一套可以为政府领导实时查看信息,提供决策依据的数据分析解决方案。

如下本人项目的原型图:

二、政务BI产品架构设计

当得到政务BI平台建设项目的时候,首位接棒者就是数据产品经理,其要做的工作和常规的产品设计工作类似,首先要进行项目调研,对产品形态有大致的了解,进而梳理产品使用流程,完成功能架构设计,由此确定产品的需求范围和功能的边界。

1)产品的使用流程

以用户为切入点,我们可将用户分为内容的加工者:使用BI平台进行数据处理,数据分析与可视化制作的人群(一般是供应商或一线公务员);内容使用者:查阅报表的人群(一般就是领导级别)。

2)产品的框架设计常见的框架设计方式有:

  • 按照产品的功能模块展开设计:如果产品相对独立,或者对上下游的依赖关系清晰,可选用以产品的功能模块为切入点,进行产品架构设计。
  • 按照产品的业务逻辑展开设计:如果产品与企业多个系统存在依赖关系与数据流转关系,且系统角色复杂,可通过产品的业务逻辑来进行产品架构设计,在设计前,需要补充各业务模块的数据流转逻辑和页面交互。

三、政务BI产品功能详解

需求实现的方式有很多,“条条大路通罗马”,可供选择的实现逻辑也有很多。一般而言,政务智能BI也可以以下方式实现:

1. 数据的接入

如果要自上而下的讲解BI产品架构,首先要说的应该是基础服务,不过基础服务功能都是通用的,不管是商业BI,还是政务BI。所以这里从BI平台使用的主流程开始讲:

数据接入,顾名思义就是把源数据,外部数据接入BI平台,比如可以从Hadoop大数据平台(可以看做是新一代的数据仓库系统),政府其他部门的数据中台等接入。

简单来说,政务BI平台也一样,使用适配的数据源类型有:

  • 大数据平台:企业级数据仓库,常用Hadoop大数据平台,如Hive等。
  • 关系型数据库:可以通过JDBC接口实时访问的的数据库,如MySQL。
  • 文本数据源:文本文件如Excel,CSV。
  • API数据源:对外提供标准的API接口。
  • 内置数据源:内置的无须用户添加即可使用的数据,如天气数据,人口数据,移动应用数据等。

在进行具体的功能设计时,产品需要秉持“增删改查空异常”的七字真言,这是产品设计最基础最通用的设计准则。

2. 数据的处理

通过对已接入数据源的数据表进行二次计算等操作,创建新的数据集,以便进行数据的筛选与清洗、数据的标记、转换等。

数据集,顾名思义就是数据的集合,就是一张张新的数据中间表。为了提高用户的可视化分析取数的效率,政务BI平台也会建设一个中间层(分布式数据库)存储各类数据集,避免每次数据的调用都需要重新进行底层的取数与计算。

大概可以分为以下3种方式:

1)数据表类:最直接最简单最常用的数据加工方式,从指定的数据源中选择想要的获取的数据表,进行数据的抽取,保存操作即可。

2)SQL类:就是通过编写SQL语句的方式实现的,基本功能就是为用户提供SQL语法的编写能力。可以实现一些高级及有的深度的功能。

3)自助配置类:就是通过用户界面操作数据集,自助配置类降低了数据的操作门槛,具体实现流程有:

  • 数据的过滤:界面可视化进行数据的过滤。
  • 分组汇总:比如:需要根据某社区的居民明细表,统计该社区中各楼栋的住户数,起对应的SQL语句是SELECT COUNT(*) FROM <表名> GROUP BY <楼栋字段>。
  • 新增字段:新增字段属于相对复杂的处理动作,需要引入很多函数来实现多字段的二次计算。
  • 多表合并:通过SQL语句进行多表合并,主要是左右合并(JOIN操作)和上下合并(UNION操作)两类,这也需要有一定的编程基础,理解JOIN和UNION是实现逻辑。

(这里再补充一下,产品经理是必须要懂一定程度的编程技术的,编程世界的一些原理,概念其实都是来自于现实生活的高度抽象,改变世界的其实一直都是技术而不是产品,哈哈)

3. 可视化分析

前面说BI平台的内容生产流程时,我们说到从数据源到数据集的生产过程,对应着上文的数据接入与数据处理,而从数据集到图表,再到仪表板(Dashboard),就是数据可视化应用的过程了。

在日常的工作中,业务分析人员使用BI平台进行OLAP操作,并将数据分析的内容分发给其他人,就产生了报表或者数据大屏的展现效果。然后,将图表(组件)抽离出来,作为一个独立的模块,在创建仪表板时,业务优先创建图表,然后再将多个图表组装成仪表板,最终就可以形成一份份有价值的数据可视化。具体为:

  • 数据加工分析:还应根据实际需要进行一些临时的数据加工,如新增同比环比,设置维度与设置指标
  • 图表设置:目前基本的图表类型有卡片、表格、折线图、柱状图、饼图与漏斗图等,复杂的图表类型有热力图、树形图等等,百度的Apache ECharts 是目前国内应用最广,能力最全面的开源可视化图表库,大家可以参考一下。
  • 仪表板设置:包括过滤条件的设置,可实现数据的穿透与交叉分析。图表联动的设置,当筛选某个字段时,其他关联数据可以联动的切换。

这些常规的操作,我们在设计可视化的时候就要考虑好~~~~~~~~

4. 内容分发

内容分发,顾名思义就是把内容分发给用户。BI平台常用的内容分发渠道包括BI报表查看平台(PC)、移动BI(App)、数据大屏、邮件分发、URL分发与嵌入分发等。

报表数据的权限如何控制?如何实现权限的自动增删?不同的场景应用下如何拆分问题?

大致可以下方式去解决:

  • 用户:拆分用户主体下的最小单元,选择用户,选择报表,设置数据权限,从而完成报表分发。
  • 报表:拆分报表主体下的最小单元,选择报表,设置数据权限,选择用户,从而完成报表分发。

四、更加灵活的移动政务BI

1. 内容分发的窗口

一把手、二把手可以查看所管辖区域关键经济运行数据,人口数据等;发改委可以查看城市更新数据,旧村改造数据等;教育局可以查看当地的教育资源分配,就业情况等;交通局可以查看城市交通运行情况……这些信息很多时候是需要实时查看的,那就要有实时统计,并展现的载体:

本人推荐三种移动端信息架构形式:列表、网格、轮播(比如帆软FineReport支持的报表嵌入其他应用等)

2. 数据分析的工具

我们需要结合业务需求对底层数据进行萃取,选取常用的指标与维度抽象成指标库和维度库,作为移动BI用户数据分析的原材料。

1)指标库-数据萃取

主要包括指标的查看与申请、指标的维护,指标的分组管理、指标的说明等等

2)维度库-权限的管控

举例,我们为某市管辖下某区发改委分配“全区工业投资总额”数据时,在为其分配“全区工业投资总额”这个指标的同时,还需要限制维度为“全市”还是“全市下的某区”,以避免数据权限外溢,因此,维度管理是权限管控的最直接手段。

3)数据分析-乐高模式

数据分析的操作流程简单来说就是选择有利于数据可视化展示的图形,选取指标和设置维度3大步骤,具体来说就是将功能拆分成一个个“乐高”部件,用户可以按照自身的需要组装成各自的“乐高城堡”,最终达到自己想要的效果。

五、政务智能BI总结

随着政府与公共部门各级决策者对经济发展、城市管理、社会民生、治安、交通、教育、卫生等问题的日益重视,迫切需要建设一个涵盖各业务数据统计等于一体的BI数据分析平台,方便市政府各级决策者快速掌握相关情况、处理相关事务。

不管是PC端,移动端,还是大屏端,政务智能BI都不仅仅是数据分析的工具,它们输出的是政府决策辅助的服务能力,是为了让数据产生更多的行政、施政业务价值。

从传统的BI到敏捷商业BI,再到如今大数据体系下的政务智能BI,BI平台与政府业务越来越融合。BI平台对于数据资源管理的方案优势,提升了其获取底层数据的能力,这让数据对政府业务场景的描述越来越丰满,政务智能BI具备的更强的处理具体政务业务场景的能力。

本文由 @短剑在闲逛 原创发布于人人都是产品经理,未经许可,禁止转载

题图来自 Unsplash,基于 CC0 协议。

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。

","gnid":"9b680f2ee1cd45c37","img_data":[{"flag":2,"img":[{"desc":"","height":"420","title":"","url":"https://p0.ssl.img.360kuai.com/t014003ca5749cc9bf8.jpg","width":"900"},{"desc":"","height":629,"title":"","url":"https://p0.ssl.img.360kuai.com/t017f8f5a202e43be7a.jpg","width":1280},{"desc":"","height":"741","title":"","url":"https://p0.ssl.img.360kuai.com/t01575bfa1e88c49e95.jpg","width":"1000"},{"desc":"","height":740,"title":"","url":"https://p0.ssl.img.360kuai.com/t01af74511f7cc5c8f0.jpg","width":1280}]}],"original":0,"pat":"art_src_3,fts0,sts0","powerby":"pika","pub_time":1701660480000,"pure":"","rawurl":"http://zm.news.so.com/f6e6c30891ed97b0299d78814ea13899","redirect":0,"rptid":"3daade7189a332fc","rss_ext":[],"s":"t","src":"人人都是产品经理","tag":[{"clk":"ktechnology_1:大数据","k":"大数据","u":""}],"title":"大数据体系下的政务智能BI建设

易玛房4871C#调用SQL sever存储过程 -
万股骂15298424949 ______ /* * 举一个最简单的例子 * 带一个输入参数 * 存储过程如下: * create procedure proc_select * @name varchar(20) * as * begin * select * from 表名 where name like '%'+@name+'%' * end */ using (SqlConnection conn = new SqlConnection(...

易玛房4871怎么使用sql语句返回存储过程的内容 -
万股骂15298424949 ______ 你可以将sp_helptext 放到 查询分析器里 工具--自定义 对应的CTRL+F1 后面,这样以后要看存储过程的内容就可以 选中存储过程的名称 同时按CTRL和F1键就可以了

易玛房4871sql procedure 怎么调用 -
万股骂15298424949 ______ 为了演示方便,新创建了一个存储过程 [dbo].[pr_test] . 怎么调用SQL存储过程 存储过程内容很简单就是几个数字,实际应用中可能还会使用的到一些存储过程参数. 怎么调用SQL存储过程 执行存储过程,来检验一下新建的存储过程结果集. ...

易玛房4871SQL中存储过程调用存储过程,怎么取返回值 -
万股骂15298424949 ______ 存储过程中的第一个参数 @title 将接收由调用程序指定的输入值,而第二个参数 @ytd_sales 将向调用程序返回该值.SELECT 语句使用 @title 参数以获得正确的 ytd_sales 值,并将该值赋予 @ytd_sales 输出参数.CREATE PROCEDURE get_...

易玛房4871调用存储过程的方法..
万股骂15298424949 ______ 给你个分页存储过程吧 我自己写的. ALTER procedure [dbo].[pro_lu_GolfJB_Sele] @Ps int=10, --页大小 @Pg int=1 --读取的页码 AS Declare @Rows int,@Pgs int,@P1 int,@P2 int //定义总行数,总页数,计算用变量 Declare @t table(I int ...

易玛房4871sql server sql调用存储过程 参数怎么使用 -
万股骂15298424949 ______ 执行带参数的存储过程的方法如下:Exec sp_configure 'allow updates',1 --允许更新系统表.exec dbo.User_ChangeObjectOwnerBatch 'OldOwner','dbo...

易玛房4871vs怎么调用sql数据库的储存过程 -
万股骂15298424949 ______ SqlCommand cmd = new SqlCommand(); cmd.CommandType = CommandType.StoredProcedure;//表明用的是存储过程类型的SQL语句 cmd.CommandText = "存储过程名字"; cmd.Connection = 数据库连接对象;

易玛房4871怎么用sql作业调用存储过程 -
万股骂15298424949 ______ 在作业里执行SQL语句,写上执行存储过程的SQL就可以了.

易玛房4871求sql存储过程的简单例子 -
万股骂15298424949 ______ CREATE PROCEDURE jiafa @a VARCHAR(2000) AS BEGIN EXECute('select ' + @a) END GO EXEC jiafa '22+33'

易玛房4871Java调用SQL存储过程、事务
万股骂15298424949 ______ 从JDBC调用存储过程 JDBC允许在用Java编写的程序中调用存储过程.第一步是创建一个CallableStatement对象.就像Statement和PreparedStatement对象一样,利用一个打开的Connection对象即可完成创建.CallableStatement对象包含了存...

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024