Mysqlカスタム関数の例

1408 ワード

定義関数を作成する基本構文は次のとおりです.
# DELIMITER         
DELIMITER //
CREATE FUNCTION    (    )
RETURNS     
begin
 #    
RETURN
 END //
DELIMITER ;

1、作成日時フォーマット関数
DROP FUNCTION IF EXISTS `FORMAT_DATE_TIME`;
CREATE FUNCTION FORMAT_DATE_TIME(`datetimes` DATETIME)
RETURNS VARCHAR(100)
  RETURN  DATE_FORMAT(`datetimes`,'%Y %m %s  %H %i %s ');
#     
SELECT FORMAT_DATE_TIME(create_time)  FROM auge_menu;

2、日付書式設定関数の作成
DROP FUNCTION IF EXISTS `FORMAT_DATE`;
CREATE FUNCTION FORMAT_DATE(`datetimes` DATETIME)
RETURNS VARCHAR(100)
  RETURN  DATE_FORMAT(`datetimes`,'%Y %m %s ');
#    
SELECT FORMAT_DATE(create_time)  FROM auge_menu;

3、時間フォーマット関数の作成
DROP FUNCTION IF EXISTS `FORMAT_TIME`;
CREATE FUNCTION FORMAT_TIME(`datetimes` DATETIME)
RETURNS VARCHAR(100)
  RETURN  DATE_FORMAT(`datetimes`,'%H %i %s ');
#    
SELECT FORMAT_TIME(create_time)  FROM auge_menu;

4、32ビットUUIDの生成
#    UUID  ,         UUID,   JAVA
DROP FUNCTION IF EXISTS `GET_UUID`;
CREATE FUNCTION GET_UUID()
  RETURNS VARCHAR(100)
  RETURN REPLACE(UUID(),'-','');

#     
SELECT GET_UUID() FROM auge_menu;
SELECT GET_UUID() as id,path FROM auge_menu;

転載先:https://www.cnblogs.com/zhoutao825638/p/10382047.html