mysql 5中的store function

mysql 5中的store function
mysql 5中新增了視圖,存儲過程,觸發器等新功能,其中不少資料對其都有介紹,今天看到了
其中的一個叫store function的功能,和存儲過程有點象,但返回的是值哦,用法挺靈活的,故介紹之


mysql> DELIMITER ||
mysql>
CREATE FUNCTION WEIGHTED_AVERAGE (n1 INT, n2 INT, n3 INT, n4 INT)
RETURNS INT
DETERMINISTIC
BEGIN
DECLARE avg INT;
SET avg = (n1+n2+n3*2+n4*4)/8;
RETURN avg;
END ||
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT WEIGHTED_AVERAGE(70,65,65,60)\G
*************************** 1. row ***************************
WEIGHTED_AVERAGE(70,65,65,60): 63
1 row in set (0.00 sec)
注意,由于MYSQL中以分號作為每行的結束,而存儲過程和存儲函數有很多行組成,因此,要先用delimiter ||(||可以是自
定義的字符,比如可以為|等),注意,delimiter和||之間是有空格的哦,然后在結束的地方也寫上 end ||匹配就可以了,
從上面可以看到,是實現對傳入的四個參數求一個算術表達式的運算結果
在下面的例子中
mysql> CREATE TABLE sfdata(mark1 INT,mark2 INT,mark3 INT,mark4 INT,name VARCHAR(50))
mysql> INSERT INTO sfdata VALUES(70,65,65,60,'Mark')|
mysql> INSERT INTO sfdata VALUES(95,94,75,50,'Pavlov')|
mysql>
CREATE FUNCTION WEIGHTED_AVERAGE2 (v1 VARCHAR(50))
RETURNS INT
DETERMINISTIC
BEGIN
DECLARE i1,i2,i3,i4,avg INT;
SELECT mark1,mark2,mark3,mark4 INTO i1,i2,i3,i4 FROM sfdata WHERE name=v1;
SET avg = (i1+i2+i3*2+i4*4)/8;
RETURN avg;
END|
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT WEIGHTED_AVERAGE2('Pavlov') AS Pavlov, WEIGHTED_AVERAGE2('Mark') AS Mark\G
*************************** 1. row ***************************
Pavlov: 67
Mark: 63
1 row in set (0.00 sec)

首先建立了一個表,然后放進兩條數據,然后在調用存儲函數時,傳入不同的人名,然后該函數自動將該人的三個數據,
放到i1,i2,i3,i4四個變量中去計算,最后分別得出他們的結果,十分容易
?
?
?
posted on 2006-04-10 15:35 jackyrong的世界 閱讀(...) 評論(...) 編輯 收藏

轉載于:https://www.cnblogs.com/jackyrong/archive/2006/04/10/371359.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/277223.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277223.shtml
英文地址,請注明出處:http://en.pswp.cn/news/277223.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

html frame跳轉實例,HTML frame標簽怎么用?frame標簽的具體使用實例

本篇文章主要為大家講述的是關于HTML frame標簽的用法,還有關于frame標簽中的屬性介紹。還有關于frame標簽的使用實例,下面就讓我們一起來看看這篇文章吧首先我們先看看HTML frame標簽的用法:標簽定義 frameset 中的一個特定的窗口(框架)。fr…

java 實現支持向量機

https://github.com/kevin0016/java-SVM

藍橋杯——快速排序(2018JavaB組第5題9分)

快速排序(18JavaB5,9’) 以下代碼可以從數組a[]中找出第k小的元素。 它使用了類似快速排序中的分治算法,期望時間復雜度是O(N)的。 請仔細閱讀分析源碼,填寫劃線部分缺失的內容。 import java.util.Random; public class Main{pub…

關于蝴蝶背景

Runner 2006-07-04 這些鏈接都比較久遠了,現在大概都失效了。好像有不少人都是這兩只可愛的蝴蝶帶來的,看來這兩只蝴蝶真是我的福星啊。這里再把Flash背景的用法貼出來吧.如果直接點擊鏈接無法顯示頁面,可以把鏈接地址復制到瀏覽器的地址欄里…

html 文本橫豎切換,(橫豎屏切換/強制橫屏)CSS3 transform 怎樣才能中心旋轉?

現在有一個canvas,我希望在(手機和平板)豎屏時能夠把它以中心作為旋轉原點旋轉90(強制橫屏),但用了transform-origin,無論怎樣設置數值都不能達到目的,是我哪里搞錯了嗎?附CSS代碼:html, body{width: 100%;…

Echarts多任務可視化之再優化

1.上次進程可視化由svg實現,本次改用echarts框架實現。Js文件:loadxmldoc.js(用于加載xml文檔)echarts.js(用來實現有向圖繪制)2.思路:Echarts是定義數據對象數組data和連接對象數組links&#…

約 定

十天, 不能見面 ,不能打電話或發短信 .這是我和她的約定.十天,要讓一個深愛著她的男人去尊照這樣的約定去做,實在是難以接受。雖然心里有一萬個不愿意,但我知道 ,我心里早以做出了選擇.選擇了我愛的&#x…

NIKE LEBRON 13 PERFORMANCE REVIEW

LeBron James signed a lifetime deal with Nike, cementing his already stable position as Nike’s current top endorser. That means it’s no surprise that Nike would use a person in such a position to help lead new innovative technology. But at times, Nike is…

我的專業我的夢作文計算機,我的創新我的夢作文

新時代,新變化。現在二十一世紀,人們都過上了幸福的生活,發明出來的日常用品,電子產品等等,都是根據人們創新的精神建造出來的。現在我們通過了學習,也漸漸體會到了創新的重要性。就像是在動畫片中&#xf…

Ubuntu掛載新硬盤

1、加掛硬盤 Shell代碼 復制代碼sudo hdparm -I /dev/sdb 硬盤硬件安裝后,此命令測試linux系統是否能找到掛載的未分區硬盤 2、創建分區 Shell代碼 復制代碼sudo fdisk /dev/sdb sda是第一塊SCSI硬盤,sdb第二塊,以此類推...物理分區使用a、b…

利用XML實現通用WEB報表打印 盧彥

利用XML實現通用WEB報表打印(1) 盧彥 摘要開發B/S結構的應用程序最頭疼的問題可能就是報表打印了,由于只能采用瀏覽器來作為用戶界面進行交互,所以不能精確控制客戶端的打印機。而很多B/S結構的應用程序常常需要完成非常復雜的報表打印任務。而靠IE自帶的…

增加新分類daily——“每天學了啥?”

如題轉載于:https://www.cnblogs.com/sig3/p/3926538.html

現代計算機密碼學階段主要有兩個方向,密碼學技術讀書筆記

關于密碼學技術讀書筆記一.密碼學的介紹密碼學(在西歐語文中,源于希臘語krypts“隱藏的”,和grphein“書寫”)是研究如何隱密地傳遞信息的學科。在現代特別指對信息以及其傳輸的數學性研究,常被認為是數學和計算機科學的分支,和信…

cascade rcnn論文總結

1.bouding box regression總結: rcnn使用l2-loss 首先明確l2-loss的計算規則: L?(f?(P)?G?)2,?代表x,y,w,h 整個loss : LLxLyLwLh 也就是說,按照l2-loss的公式分別計算x,y,w,h的loss,然后把4個loss相加就得到總的…

淺談優化SQLServer數據庫服務器內存配置的策略

引文 http://demo.nbarticle.com/view/2004/8/9/view_1827.htm 農業銀行總行1998年以來正式推廣了新版網絡版綜合業務統計信息系統,該系統是基于WindowsNT4.0平臺,采用客戶/服務器模式,以Microsoft SQL Server為基礎建立起來的大…

知道第一章計算機基礎知識作業答案,大學計算機基礎作業答案

大學計算機基礎作業答案第一章 現代社會與計算機1. 什么事信息,其主要特征是什么?答:信息是可傳遞和共享的,可消除人們認知上的不確定因素,對人們的決策具有現實或潛在價值的知識。特征:普遍性、依附性、共…

Netflix推薦系統(Part two)-系統架構

Netflix在2013年公布了自己推薦系統的架構,本文主要總結和翻譯自System Architectures for Personalization and Recommendation,但這并不是一篇完整的翻譯文章。 Overview 首先,我們在下圖中提供推薦系統的整體系統圖。 該體系結構的主要組件…

母版頁可以動態切換嗎?

通過設置“MasterPageFile”屬性可以做到,然而這個屬性只能在“Page_PreInit”事件之中或之前設置。在Page_PreInit事件或之前,當前頁面包含的對象還沒有被生成,不能訪問,所以,如果想根據當前頁面上某個控件的值動態切…

httpclient 多附件上傳

多附件上傳實例&#xff1a; /*** 多附件上傳* param host* param uri* param attachment 附件* param param body參數* return*/public String upload(String host, String uri, Map<String,String> attachment, Map<String, String> param) {logger.info("…

加拿大大學 計算機專業排名2015,加拿大大學計算機專業排名top15

加拿大大學計算機專業排名。加拿大開設計算機專業的很多高校還提供帶薪實習機會&#xff0c;吸引了眾多國際學子前往留學。在加拿大計算機專業優秀的大學很多。同時&#xff0c;加拿大計算機專業排名在世界上也非常的靠前&#xff0c;在加拿大有很多大學值得廣大計算機熱愛者選…