select函数

Mysql-存储过程

廉价感情. 提交于 2020-03-07 12:43:32
存储过程 什么是存储过程 存储过程是为以后的使用而保存的一条或条SQL语句的集合,类似于批处理 为什么用存储过程 1)简单,把多条SQL语句封装在类似函数的单元中,方便调用和修改 2)安全,通过存储过程限制基础数据的访问,减少数据讹误的机会;   防止了错误,需要执行的步骤越多,就越可能出错,保持了数据的一致性。 3)高性能,存储过程比单独的SQL语句要快 怎么使用存储过程 首先创建一个表 CREATE TABLE students( stu_id INT(10) not NULL AUTO_INCREMENT PRIMARY KEY, stu_name VARCHAR(50) not NULL, age INT(3) not NULL )ENGINE="INNODB", CHARSET="UTF8"; INSERT INTO students VALUES(NULL, "lily", 21); INSERT INTO students VALUES(NULL, "tom", 18); INSERT INTO students VALUES(NULL, "marton", 16); 创建存储过程 栗子1:创建无参数的存储过程 DELIMITER // CREATE PROCEDURE studentage() BEGIN SELECT AVG(age) AS

Oracle 分析函数的使用

谁说胖子不能爱 提交于 2020-03-06 08:50:34
Oracle 分析函数的使用 Oracle 分析函数 使用介绍 分析函数 是oracle816引入的一个全新的概念,为我们分析数据提供了一种简单高效的处理方式.在 分析函数 出现以前,我们必须使用自联查询,子查询或者内联视图,甚至复杂的存储过程实现的语句,现在只要一条简单的sql语句就可以实现了,而且在执行效率方面也有相当大的提高.下面我将针对 分析函数 做一些具体的说明. 今天我主要给大家介绍一下以下几个函数的使用方法 1. 自动汇总函数rollup,cube, 2. rank 函数, rank,dense_rank,row_number 3. lag,lead函数 4. sum,avg,的移动增加,移动平均数 5. ratio_to_report报表处理函数 6. first,last取基数的 分析函数 基础数据 Code: [Copy to clipboard] 06:34:23 SQL> select * from t; BILL_MONTH AREA_CODE NET_TYPE LOCAL_FARE --------------- ---------- ---------- -------------- 200405 5761 G 7393344.04 200405 5761 J 5667089.85 200405 5762 G 6315075.96 200405

SQL Server系统函数

孤者浪人 提交于 2020-03-06 08:48:25
一、字符转换函数 1 、 ASCII () 返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。 2 、 CHAR () 将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值, CHAR () 返回NULL 。 3 、 LOWER ()和UPPER() LOWER ()将字符串全部转为小写; UPPER ()将字符串全部转为大写。 4 、 STR () 把数值型数据转换为字符型数据。 STR ( < float_expression > [ ,length[, <decimal> ] ]) length 指定返回的字符串的长度, decimal 指定返回的小数位数。如果没有指定长度,缺省的length 值为10, decimal 缺省值为0。 当length 或者decimal 为负值时,返回NULL; 当length 小于小数点左边(包括符号位)的位数时,返回length 个 * ; 先服从length ,再取decimal ; 当返回的字符串位数小于length ,左边补足空格。 二、去空格函数 1 、 LTRIM () 把字符串头部的空格去掉。 2 、 RTRIM () 把字符串尾部的空格去掉。 三、取子串函数 1 、 left () LEFT (

解密SQL SERVER存储过程

旧城冷巷雨未停 提交于 2020-03-06 07:09:25
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_decrypt]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[sp_decrypt] GO /*--破解函数,过程,触发器,视图.仅限于SQLSERVER2000 --作者:J9988--*/ /*--调用示例 --解密指定存储过程 exec sp_decrypt 'AppSP_test' --对所有的存储过程解密 declare tb cursor for select name from sysobjects where xtype='P' and status>0 and name<>'sp_decrypt' declare @name sysname open tb fetch next from tb into @name while @@fetch_status=0 begin print '/*-------存储过程 ['+@name+'] -----------*/' exec sp_decrypt @name fetch next from tb into @name end close tb deallocate tb --*/

查看SQL SERVER 加密存储过程,函数,触发器,视图

空扰寡人 提交于 2020-03-06 07:09:01
查看SQL SERVER 加密存储过程,函数,触发器,视图 选择自 j9988 的 Blog 关键字 字节不受限制 , 比 SQLexplorer 安全 , 查看所有 SYSCOMMENTS 内加密的代码 出处 create PROCEDURE sp_decrypt(@objectname varchar(50)) AS begin set nocount on --CSDN : j9988 copyright:2004.07.15 --V3.2 -- 破解字节不受限制,适用于 SQLSERVER2000 存储过程,函数,视图,触发器 -- 修正上一版 " 视图触发器 " 不能正确解密错误 -- 发现有错,请 E_MAIL : CSDNj9988@tom.com begin tran declare @objectname1 varchar(100),@orgvarbin varbinary(8000) declare @sql1 nvarchar(4000),@sql2 varchar(8000),@sql3 nvarchar(4000),@sql4 nvarchar(4000) DECLARE @OrigSpText1 nvarchar(4000), @OrigSpText2 nvarchar(4000) , @OrigSpText3 nvarchar(4000),

存储过程、存储函数的加密:WITH ENCRYPTION

左心房为你撑大大i 提交于 2020-03-06 07:08:23
存 储过 程、存 储 函数的解密(以下是一位绝世高人编写的代码) if exists ( select * from dbo.sysobjects where id = object_id (N ' [dbo].[sp_decrypt] ' ) and OBJECTPROPERTY (id, N ' IsProcedure ' ) = 1 ) drop procedure [ dbo ] . [ sp_decrypt ] GO /**/ /* --破解函数,过程,触发器,视图.仅限于SQLSERVER2000 --作者:J9988-- */ /**/ /* --调用示例 --解密指定存储过程 exec sp_decrypt 'AppSP_test' --对所有的存储过程解密 declare tb cursor for select name from sysobjects where xtype='P' and status>0 and name<>'sp_decrypt' declare @name sysname open tb fetch next from tb into @name while @@fetch_status=0 begin print '/*-------存储过程 ['+@name+'] ----------- */ ' exec sp_decrypt

几种网络服务器模型的介绍与比较

五迷三道 提交于 2020-03-05 16:52:59
原文链接 前言 事件驱动为广大的程序员所熟悉,其最为人津津乐道的是在图形化界面编程中的应用;事实上,在网络编程中事件驱动也被广泛使用,并大规模部署在高连接数高吞吐量的服务器程序中,如 http 服务器程序、ftp 服务器程序等。相比于传统的网络编程方式,事件驱动能够极大的降低资源占用,增大服务接待能力,并提高网络传输效率。 关于本文提及的服务器模型,搜索网络可以查阅到很多的实现代码,所以,本文将不拘泥于源代码的陈列与分析,而侧重模型的介绍和比较。使用 libev 事件驱动库的服务器模型将给出实现代码。 本文涉及到线程 / 时间图例,只为表明线程在各个 IO 上确实存在阻塞时延,但并不保证时延比例的正确性和 IO 执行先后的正确性;另外,本文所提及到的接口也只是笔者熟悉的 Unix/Linux 接口,并未推荐 Windows 接口,读者可以自行查阅对应的 Windows 接口。 阻塞型的网络编程接口 几乎所有的程序员第一次接触到的网络编程都是从 listen()、send()、recv() 等接口开始的。使用这些接口可以很方便的构建服务器 / 客户机的模型。 我们假设希望建立一个简单的服务器程序,实现向单个客户机提供类似于“一问一答”的内容服务。 图 1. 简单的一问一答的服务器 / 客户机模型 我们注意到,大部分的 socket 接口都是阻塞型的。所谓阻塞型接口是指系统调用(一般是

将竖着记录转化为一条记录

僤鯓⒐⒋嵵緔 提交于 2020-03-04 20:23:15
--使用游标来处理 CREATE TABLE tab(ID int,Area varchar(10)) INSERT tab SELECT 1,'A' UNION ALL SELECT 1,'B' UNION ALL SELECT 1,'C' UNION ALL SELECT 2,'D' UNION ALL SELECT 2,'E' UNION ALL SELECT 3,'F' GO declare @i int declare @ii varchar(100) set @ii = '' declare dd cursor for select distinct id from tab open dd fetch dd into @i WHILE @@FETCH_STATUS = 0 BEGIN select @ii=@ii+'.'+area from tab where id = @i print convert(varchar(10),@i)+ ' ' +stuff(@ii,1,1,'') set @ii = '' fetch dd into @i END CLOSE dd DEALLOCATE dd drop table tab --使用函数来处理 --处理的数据 CREATE TABLE tab(ID int,Area varchar(10)) INSERT tab

SQLSERVER存储过程基本语法

筅森魡賤 提交于 2020-03-04 08:29:08
转自: http://www.cnblogs.com/SunShineYPH/archive/2011/12/13/2285570.html 一、定义变量 view source print ? --简单赋值 declare @a int set @a=5 print @a --使用select语句赋值 declare @user1 nvarchar(50) select @user1= '张三' print @user1 declare @user2 nvarchar(50) select @user2 = Name from ST_User where ID=1 print @user2 --使用update语句赋值 declare @user3 nvarchar(50) update ST_User set @user3 = Name where ID=1 print @user3 二、表、临时表、表变量 view source print ? --创建临时表1 create table #DU_User1 ( [ID] [ int ] NOT NULL , [Oid] [ int ] NOT NULL , [Login] [nvarchar](50) NOT NULL , [Rtx] [nvarchar](4) NOT NULL , [ Name ] [nvarchar]

mysql(3)mysql的sql语句入门

∥☆過路亽.° 提交于 2020-03-03 12:41:08
1.登录mysql与退出mysql 登录:mysql -u账号 -p密码 -h主机地址 -P端口号 -e 执行的sql语句; //密码一般不直接写出,回车后隐藏写入 ,-h可以不写默认是localhost 退出:quit,exit ,ctrl+c 备注:参数可分为全局和会话,可修改与不可修改,全局需要加上global,例如 set global 参数 =值,会话级别只对当前会话有效, 例如set 【session】 autocommit=1;中间可以省略session,例如需要全局的话需要 set global autocommit=1;不能持久化,重启后是默认值,全局设置对已经开启了会话的不起作用,只会对以后连接的会话有效,查看可以使用show 【global/session】 【variables 】 【like pattern】 变量名 来查看。 备注:dbms数据库管理系统 ,dba数据库管理员, sql(ddl 表结构,dml增删改 ,dql 查询,dcl数据库控制,tcl事物控制) 2.数据的导入与导出 1)数据的导入:source (运行在mysql下的命令) select version();//查看当前数据库版本; create database 数据库名称;//创建数据库 show databases ; //显示所有的数据库,产看数据库是否已经导入,也可以使用