如何在函数上使用变量

时间:2016-05-25 01:01:31

标签: mysql function stored-functions

我需要创建一个存储函数:

这是我的代码

SELECT count(Dominio) FROM Thogar WHERE DOMINIO='%'

我需要创建一个存储函数,我将在(U,C,R)之间写一个字母,该函数将使用所选字母替换上一代码中的

我该怎么办?谢谢!

搞定了

CREATE FUNCTION `Buscar`(`param` CHAR(1))
    RETURNS INT
    LANGUAGE SQL
    NOT DETERMINISTIC
    CONTAINS SQL
    SQL SECURITY DEFINER
    COMMENT ''
BEGIN
    DECLARE res INT;
    SELECT count(Dominio) INTO res FROM Thogar WHERE DOMINIO=param;
    RETURN res;
END

    Call buscar('C')

2 个答案:

答案 0 :(得分:1)

这应该有效:

int age;
cin >> age;

cout << "You are " << age << " years old!" << endl;

答案 1 :(得分:0)

如果你想用只有一个sql查询来创建存储函数, 我没有看到任何正常的理由。

它不会给你带来性能提升。

简化怎么样?

您可以创建视图:

CREATE VIEW v_dominio_counters AS 
SELECT Dominio, count(Dominio) AS counter FROM Thogar GROUP BY Dominio

然后使用它:

SELECT counter FROM v_dominio_counters WHERE Dominio = 'U' LIMIT 1;

当你拥有庞大的桌子时,它会随时准备好使用便于使用的计数器。