mysql - 创建mysql函数

标签 mysql

我想使用以下查询创建一个函数,但发生错误

DELIMITER $$
CREATE FUNCTION getOnlineUserTraffic (x1 VARCHAR(32)) 
RETURNS FLOAT
DETERMINISTIC
BEGIN 
  DECLARE dist FLOAT;
  SET dist = SELECT UsedCreditTraffic FROM uonlineuser WHERE UserName=x1
  RETURN dist;
END$$
DELIMITER ;

//userName= 字符,长度=32

//UsedCreditTraffic = float

最佳答案

尝试:

DELIMITER $$

DROP FUNCTION IF EXISTS getOnlineUserTraffic$$

CREATE FUNCTION getOnlineUserTraffic(x1 VARCHAR(32)) 
RETURNS FLOAT
DETERMINISTIC
BEGIN 
  DECLARE dist FLOAT;
  SET dist = (SELECT UsedCreditTraffic FROM uonlineuser WHERE UserName=x1);
  RETURN dist;
END$$

DELIMITER ;

SQL Fiddle demo

关于mysql - 创建mysql函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27112664/

相关文章:

html - 为另一个选择选项传递参数

java - 数据截断:Incorrect value: error while inserting Date field to Mysql DB

php - 如何让php和mysql使用不同的核心

mysql - 如何检查 mysql 数据库中的每第 N 个条目?

php - 第 68 行的 fatal error : Undefined class constant 'MYSQL_ATTR_SSL_CA' in/var/www/laravel/config/database. php

php - CDbConnection 和大括号

mysql - 在同一查询中使用查询结果

mysql - 在此我有 2 个表,我需要一行中的旧值和一行中的新值

php - 如何从 mysql 数据库访问 image_name 以获取 8 个 session 图像的数组

Mysql 一个表中的多个最大值