Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQL中重用任意函数的结果_Sql_Syntax - Fatal编程技术网

在SQL中重用任意函数的结果

在SQL中重用任意函数的结果,sql,syntax,Sql,Syntax,我有一点类似下面的SQL: (...) where usr.USR_START > ANY (1,5,9) AND usr.USR_END < ANY (1,5,9) 但这种语法在SQL中不起作用。有什么方法可以真正解决这个问题吗?如果您的数据库系统支持行值构造函数,我认为最干净的方法是: declare @t table (USR_START int not null,USR_END int not null) insert into @t(USR_START,USR_END)

我有一点类似下面的SQL:

(...) where usr.USR_START > ANY (1,5,9) AND usr.USR_END < ANY (1,5,9)
但这种语法在SQL中不起作用。有什么方法可以真正解决这个问题吗?

如果您的数据库系统支持行值构造函数,我认为最干净的方法是:

declare @t table (USR_START int not null,USR_END int not null)
insert into @t(USR_START,USR_END) values (6,4)

select * from @t usr
where EXISTS (
    select * from (VALUES (1),(5),(9)) t(u) where usr.USR_START > u and usr.USR_END < u)
如果数据库系统支持行值构造函数,那么对表变量也使用SQL Server语法

declare @t table (USR_START int not null,USR_END int not null)
insert into @t(USR_START,USR_END) values (6,4)

select * from @t usr
where EXISTS (
    select * from (VALUES (1),(5),(9)) t(u) where usr.USR_START > u and usr.USR_END < u)

同时对表变量使用SQL Server语法

请标记您正在使用的RDBMSusing@BHouse我不确定这是否相关?ANY是ANSI标准SQL关键字,不是吗?我们可能会建议使用RDBMS特定的函数。这就是为什么它是相关的原因之一。代码是特定于数据库的,尽管大多数函数都是ANSI标准的,也许有不同的方法可以做到这一点,但我并不完全清楚您想要实现什么。请您回答您的问题,并根据这些数据添加一些内容和预期输出。请,。请标记您所在的RDBMSusing@BHouse我不确定这是否相关?ANY是ANSI标准SQL关键字,不是吗?我们可能会建议使用RDBMS特定的函数。这就是为什么它是相关的原因之一。代码是特定于数据库的,尽管大多数函数都是ANSI标准的,也许有不同的方法可以做到这一点,但我并不完全清楚您想要实现什么。请您回答您的问题,并根据这些数据添加一些内容和预期输出。求你了,那太聪明了!我认为我们可以做到这一点,这很聪明!我想我们可以做到,