mysql如何使用自己的聚合函数实现DISTINCT
关键字?它可以以相同的方式在UDF中使用吗?
SELECT MY_UDF(DISTINCT value) FROM table
如果是这样,MySQL在将一组行传递给UDF之前是否应用了DISTINCT,或者UDF本身是否必须处理它? UDF采用多个参数会发生什么?它是否区分了整个输入元组?
答案 0 :(得分:0)
是的,它可以在UDF中使用,方法与在以下语句中使用的方式相同。
CREATE TABLE sample_1 (
`id` int(11) NOT NULL AUTO_INCREMENT,
`col_val` int(11) ,
PRIMARY KEY (`id`)
);
INSERT INTO sample_1(col_val) values (1),(1), (2),(3) ;
SELECT * FROM sample_1;
SELECT DISTINCT COL_VAL FROM sample_1;
SELECT SUM(DISTINCT COL_VAL) FROM sample_1;
答案 1 :(得分:0)
我试过,在MySQL中,包括UDF调用中的DISTINCT关键字是一种语法错误。所以我认为这是不可能的。