Mysql中的函數

来源:http://www.cnblogs.com/chenpi/archive/2016/01/17/5137178.html
-Advertisement-
Play Games

一、什麼是函數mysql中的函數與存儲過程類似,都是一組SQL集;二、與存儲過程的區別函數可以return值,存儲過程不能直接return,但是有輸出參數可以輸出多個返回值;函數可以嵌入到sql語句中使用,而存儲過程不能;函數一般用於實現較簡單的有針對性的功能(如求絕對值、返回當前時間等),存儲過程...


一、什麼是函數

mysql中的函數與存儲過程類似,都是一組SQL集;

二、與存儲過程的區別

函數可以return值,存儲過程不能直接return,但是有輸出參數可以輸出多個返回值;

函數可以嵌入到sql語句中使用,而存儲過程不能;

函數一般用於實現較簡單的有針對性的功能(如求絕對值、返回當前時間等),存儲過程用於實現複雜的功能(如複雜的業務邏輯功能);

三、mysql自帶函數

mysql本身已經實現了一些常見的函數,數學函數、字元串函數、日期和時間函數等等,不一一列舉,這裡簡單的使用下幾個函數:

求絕對值ABS:

求ASCII:

時間相關(NOW、CURRENT_DATE、CURRENT_TIME):

四、自定義函數

自定義個函數,判斷輸入參數是否大於等於10:

-- ----------------------------
-- Function structure for `func_compare`
-- ----------------------------
DROP FUNCTION IF EXISTS `func_compare`;
DELIMITER ;;
CREATE DEFINER=`root`@`localhost` FUNCTION `func_compare`(a int) RETURNS varchar(200) CHARSET utf8
BEGIN
    #Routine body goes here...
  IF a >= 10 THEN
        RETURN '大於等於10';
  ELSE
      RETURN '小於10';
  END IF;
END
;;
DELIMITER ;

驗證函數:

SELECT func_compare(9), func_compare(11)

執行結果:


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1、文件上傳(input標簽)(1)html代碼(form表單用post方法提交)1 2 3 4 表格5 6 (2)jq提交表單到後臺 1 $("#submitForm").click(function(){ 2 //alert($("#SelectBus").val())...
  • 一、下載依賴包網盤下載:https://yunpan.cn/cryvgGGAQ3DSW 訪問密碼 f224二、 添加一個另外一個插件jquery.validate.messages_cn.js。改變預設提示方式。/* * Translated default messages for the jQu...
  • 一、調整LaunchPad的圖標顯示列數和行數1、調整每一列顯示圖標數量。在我的電腦上(1366 * 768),每列7個個人覺得比較不錯 defaults write com.apple.dock springboard-rows -int 72、調整每一行顯示圖標數量,這裡我用的是6 defa.....
  • 【錯誤信息】[2011-01-19 16:39:10 - ApiDemos] WARNING: Application does not specify an API level requirement![2011-01-19 16:39:10 - ApiDemos] Device API vers...
  • 在windows安裝Android的開發環境不簡單也說不上算複雜,本文寫給第一次想在自己Windows上建立Android開發環境投入Android浪潮的朋友們,為了確保大家能順利完成開發環境的搭建,文章寫的儘量詳細,希望對準備進入Android開發的朋友有幫助。本教程將分為五個步驟來完成Andro...
  • Android項目的目錄結構 src:項目代碼 R.java:項目中所有資源文件的資源id Android.jar:Android的jar包,導入此包方可使用Android的api libs:存放第三方jar包 assets:存資源文件夾,存放視頻或者音樂等較大的資源文件 bin:存放編譯打包後的....
  • 一、什麼是事件一組SQL集,用來執行定時任務,跟觸發器很像,都是被動執行的,事件是因為時間到了觸發執行,而觸發器是因為某件事件(增刪改)觸發執行;二、開啟事件查看是否開啟:show variables like 'event_scheduler';如果顯示OFF,則輸入以下語句開啟:set glob...
  • 事務 什麼是事務? 事務是將一個或多個T-SQL語句封裝成一個可執行單元交給SQL Server引擎執行,要麼所有語句執行成功,要麼所有語句執行失敗不存在某一條語句執行成功而其它語句為執行成功的現象! 事物的四個要素 原子性(atomicity):食物是一個完整的操作,事物的素是不可分的(原子的)。...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...