在 Vertica 中创建变量

Sco*_*ieB 6 sql ssms vertica

我正在从 SQL Server 过渡到 Vertica。有没有类似的方法来创建变量?

通常我会做类似的事情:

Define @myVariable int
Set @myVariable = select MAX(Field1) from myTable
Run Code Online (Sandbox Code Playgroud)

Gui*_*ume 5

我认为 Vertica 不允许使用变量,除非您直接使用 vsql,但 vsql 变量非常有限,并且不会执行您期望的操作:

-- this will work
\set a foo
\echo :a
foo

-- this is not what you expect:
\set a NOW()
\echo :a
NOW()

\set a select max(id) from s.items()
\echo :a
selectmax(id)froms.items()
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅https://my.vertica.com/docs/6.1.x/HTML/index.htm#2732.htm上的 vertica 文档