有没有办法将一行作为参数传递给MySQL函数?
问题描述:
大约什么,我想实现:有没有办法将一行作为参数传递给MySQL函数?
CREATE FUNCTION(row Table) RETURNS tinyint(1)
BEGIN
RETURN (row.col1 > 2 OR row.col2 IS NULL)
END;
答
在MySQL 5.7,会有一个动态列,可能被添加到表本身。它与在MySQL 5.7中添加的json解析函数一起使用。
来源:https://dev.mysql.com/doc/refman/5.7/en/create-table.html#create-table-generated-columns
嗯,你的逻辑只使用两列。将这些作为论据。 –
这是一个简单的例子,我最初的目标会更复杂。在我的查询中使用它并在没有代码部署的情况下改变它会很好。但是我真正担心的是编写查询时不会一次又一次地写同样的条件。 –