标签:mysql sql stored-procedures sql-function
我对SQL中的函数很新,我想创建一个函数来比较MySQL表中的值与之前的相比,我不知道如何做到这一点.
例如(iId是输入值)
DECLARE pVal INT(20); DECLARE val INT(20); SELECT price INTO pVal FROM products WHERE Id=iId; SELECT price FROM products; IF price == pVal THEN SET val = price; END IF;
谢谢
解决方法:
我不确定如何在表上运行select查询然后从该函数返回一旦它们被操作就返回多个值.此外,我不确定您是否可以在返回多行的函数中运行SELECT查询.第一个答案是你不能返回一个数据数组,或者我认为函数不止一行.因此,我认为最好的方法是使用返回的新数据集创建临时表.
例
DROP TEMPORARY TABLE IF EXISTS employeeTemp; CREATE TEMPORARY TABLE employeeTemp AS SELECT id,start_date FROM employee;
其次答案是肯定的,您可以在函数内运行SELECT查询以返回多行.
对此我很抱歉我对MySQL功能很新.
标签:mysql,sql,stored-procedures,sql-function 来源: https://codeday.me/bug/20190710/1422932.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。