MySQL:想把查询结果作为返回值返回,这个SQL函数该怎么写?返回值类型该填啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL:想把查询结果作为返回值返回,这个SQL函数该怎么写?返回值类型该填啥?相关的知识,希望对你有一定的参考价值。

参数:无
返回值类型:????
BEGIN #Routine body goes here... RETURN (select * from users join groups_users on users.id = groups_users.user_id);END;

参考技术A 返回值类型:table 参考技术B 在mysql里面有一个存储函数,你写一个存储函数就可以了,或者使用java语言的jdbc驱动编写DAO可以直接将结果保存到程序里面,到程序里面后就可以写一个输出文档保存到记事本里了,不过这是一件很专业的事情,过程比较复杂。 参考技术C UDF不允许返回结果集,只能是单个值 参考技术D 我来看答案 第5个回答  2014-01-04 mysql 好像存储过程里面, 直接写一句查询语句, 就相当于 存储过程 返还结果集的处理啦!本回答被提问者采纳

如果运行超过 x 秒,SQL 查询返回一个值?

【中文标题】如果运行超过 x 秒,SQL 查询返回一个值?【英文标题】:SQL Query return a value if running more than x seconds? 【发布时间】:2017-02-01 10:18:05 【问题描述】:

如果 SQL 查询运行时间超过 X 秒,是否可以终止正在执行的查询并返回特定值(例如 return value = 1)?

您能否举一个带有基本查询的具体示例。例如在 SQL 中:

select * from test

如果这个查询的执行时间超过 10 秒,它应该返回:1 作为结果。

我正在使用 SQL 管理工作室。

【问题讨论】:

@a_horse_with_no_name :- 你能检查一下我的回答是否有效吗?? 你使用什么后端语言? 【参考方案1】:

是的,有可能。您可以使用线程

看看这里的一些例子

Can We use threading in PL/SQL?

【讨论】:

【参考方案2】:

您可以使用DBPROP COMMANDTIMEOUT 指定超时并在您的客户端上使用 TRY CATH,因为在 SQL 中,连接超时无法恢复。

【讨论】:

您的答案适用于哪个 DBMS? 申请SQL SERVER【参考方案3】:

我希望这对你有用..我已经为此设置了自定义逻辑..

declare @Starttime datetime=getdate()


select * into #tmp from test


if DATEDIFF(SECOND,@Starttime,getdate()) >10
begin
   select 1
end

【讨论】:

以上是关于MySQL:想把查询结果作为返回值返回,这个SQL函数该怎么写?返回值类型该填啥?的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL如何用SQL返回一个值??再用这个值进行查询?

SQL NOT EXIST 在查询结果中返回重复值

SQL NOT EXIST在查询结果中返回重复值

sql动态查询返回值的意义是啥呢?

python MySQL执行SQL查询结果返回字典

mysql 返回的查询结果为空