Mysql 使用选择器创建函数计数总单元格的SQL查询
我正在使用phpMyAdmin并尝试创建一个创建函数的SQL查询Mysql 使用选择器创建函数计数总单元格的SQL查询,mysql,sql,phpmyadmin,sql-function,Mysql,Sql,Phpmyadmin,Sql Function,我正在使用phpMyAdmin并尝试创建一个创建函数的SQL查询 DELIMITER $$ CREATE FUNCTION get_totalLanguages(_CountryCode CHAR(3)) RETURNS INT BEGIN DECLARE totalLang INT; SET totalLang = SELECT count(DISTINCT Language) FROM countrylanguage WHERE (CountryCode == _CountryCod
DELIMITER $$
CREATE FUNCTION get_totalLanguages(_CountryCode CHAR(3)) RETURNS INT
BEGIN
DECLARE totalLang INT;
SET totalLang = SELECT count(DISTINCT Language) FROM countrylanguage WHERE (CountryCode == _CountryCode);
RETURN totalLang;
END$$
DELIMITER
该表如下所示:
+=============+==========+
| countrylanguage |
+=============+==========+
| CountryCode | Language |
+=============+==========+
| USA | English|
+-------------+----------+
| USA | Spanish|
+-------------+----------+
| USA | French|
+-------------+----------+
| MEX | Spanish|
+-------------+----------+
| MEX | English|
+-------------+----------+
| GER | German|
+-------------+----------+
| GER | English|
+=============+==========+
我希望能够使用countrycode参数调用函数。然后,该函数将计算该国家/地区代码中存在多少种不同的语言,然后将该计数作为整数返回。目前,这个查询没有给我任何错误,但没有做任何事情
get_totalLanguages('MEX')应返回2
get_totalLanguages('USA')应返回3
等等
谢谢 尝试选择函数调用的返回值
DELIMITER $$
CREATE FUNCTION get_totalLanguages(_CountryCode CHAR(3))
RETURNS INT
BEGIN
DECLARE totalLang INT;
SELECT count(DISTINCT Language) into totalLang FROM countrylanguage WHERE CountryCode = _CountryCode);
RETURN totalLang;
END$$
DELIMITER
选择get_totalLanguages('MEX')代码>hmm,这一个在CounterCode==\u countrycode上给了我一个错误。看看我的编辑,不应该在MySQL中使用双等号表示相等。是的,这就是问题所在。谢谢