VALUES声明 [英] VALUES statement
问题描述
嗨!
使用VALUES,您可以执行以下操作:
SELECT * FROM(VALUES(''A'',1),(' 'B'',2),('''C'',2))AS TEMP(LETTER,NUMBER)
会给你:
LETTER NUMBER
------ ------
A 1
B 2
C 2
有一些方法可以给我带来价值:
LETTER NUMBER
------ ----- -
所以没有结果,空结果集?
所以SELECT COUNT(*)FROM VALUES .....返回0.
< br $>
祝你好运,
Kovi
-
- 〜 - 〜 - 〜 - 〜 - 〜 - 〜 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|在一个没有围栏需要盖茨的世界里? |
|体验Linux。 |
- 〜 - 〜 - 〜 - 〜 - 〜 - 〜 - ~~~~~~~~~~~~~~~~~~~~~~ 〜 - 〜 - 〜 - 〜 -
Hi!
With VALUES you can do something like:
SELECT * FROM (VALUES (''A'', 1), (''B'', 2), (''C'', 2)) AS TEMP(LETTER, NUMBER)
which will give you:
LETTER NUMBER
------ ------
A 1
B 2
C 2
It there some way with VALUES that would give me:
LETTER NUMBER
------ ------
So no results, empty result set?
So SELECT COUNT(*) FROM VALUES..... returns 0.
Best regards,
Kovi
--
-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-
| In A World Without Fences Who Needs Gates? |
| Experience Linux. |
-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-
推荐答案
3月9日下午1点31分,Gregor Kova? < gregor.ko ... @ mikropis.siwrote:
On Mar 9, 1:31 pm, Gregor Kova?? <gregor.ko...@mikropis.siwrote:
嗨!
使用VALUES你可以做类似的事情:
SELECT * FROM(VALUES('''',1),(''B'',2),('''C'',2))AS TEMP(LETTER,NUMBER) )
会给你:
LETTER NUMBER
------ ------
A 1
B 2
C 2
有一些方法可以使用VALUES:
LETTER NUMBER
------ ------
Hi!
With VALUES you can do something like:
SELECT * FROM (VALUES (''A'', 1), (''B'', 2), (''C'', 2)) AS TEMP(LETTER, NUMBER)
which will give you:
LETTER NUMBER
------ ------
A 1
B 2
C 2
It there some way with VALUES that would give me:
LETTER NUMBER
------ ------
SELECT * FROM(VALUES(' 'A'',1),(''B'',2),(''C'',2))AS TEMP(LETTER,
NUMBER)其中1 = 0 >
/ Lennart
[....]
SELECT * FROM (VALUES (''A'', 1), (''B'', 2), (''C'', 2)) AS TEMP(LETTER,
NUMBER) where 1=0
/Lennart
[....]
Lennart写道:
Lennart wrote:
3月9日下午1点31分,Gregor Kova? < gregor.ko ... @ mikropis.siwrote:
On Mar 9, 1:31 pm, Gregor Kova?? <gregor.ko...@mikropis.siwrote:
>嗨!
使用VALUES,您可以执行以下操作:
SELECT * FROM(VALUES('''',1),(''B'',2),('''C'',2))AS TEMP(LETTER,
NUMBER)哪个会给你:
信号
------ ------
A 1
B 2
C 2
字母数字
------ ------
>Hi!
With VALUES you can do something like:
SELECT * FROM (VALUES (''A'', 1), (''B'', 2), (''C'', 2)) AS TEMP(LETTER,
NUMBER) which will give you:
LETTER NUMBER
------ ------
A 1
B 2
C 2
It there some way with VALUES that would give me:
LETTER NUMBER
------ ------
SELECT * FROM(VALUES('''',1),(''B'',2),(''C'',2))AS TEMP(LETTER,
NUMBER )其中1 = 0
/ Lennart
[....]
SELECT * FROM (VALUES (''A'', 1), (''B'', 2), (''C'', 2)) AS TEMP(LETTER,
NUMBER) where 1=0
/Lennart
[....]
是的,这可行,但问题是VALUES ....生成,
和where子句没有。
让我澄清一下。 :)))
我正在使用VALUES语句使用GUI掩码中
表中的值生成SQL语句。因此,生成此查询的应用程序必须是 b意识到表是空的并生成适当的SQL。
在以下行中:
SELECT * FROM(VALUES('''',1)除了所有价值(''b'',2))AS TEMP(LETTER,
NUMBER)
祝你好运,
Kovi
-
- 〜 - 〜 - 〜 - 〜 - 〜 - 〜 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|在一个没有围栏需要盖茨的世界里? |
|体验Linux。 |
- 〜 - 〜 - 〜 - 〜 - 〜 - 〜 - ~~~~~~~~~~~~~~~~~~~~~~ 〜 - 〜 - 〜 - 〜 -
Yes, this could work, but the problem is that VALUES .... gets generated,
and the where clause not.
Let me clearify. :)))
I''m using VALUES statement to generate an SQL statement using values in a
table in a GUI mask. So the application that generates this query must be
aware that the table is empty and generate appropriate SQL.
In the line of:
SELECT * FROM (VALUES (''a'', 1) EXCEPT ALL VALUES (''b'', 2)) AS TEMP(LETTER,
NUMBER)
Best regards,
Kovi
--
-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-
| In A World Without Fences Who Needs Gates? |
| Experience Linux. |
-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-
这个怎么样?
SELECT * FROM(VALUES(NULL,NULL), - Fixed
(1,''''),(2,''b''),... - 生成
)AS X(c1,c2)WHERE NOT(c1 IS NULL和c2 IS NULL)-fixed
干杯
Serge
-
Serge Rielau
DB2解决方案开发
IBM多伦多实验室
What about this?
SELECT * FROM (VALUES (NULL, NULL), -- Fixed
(1, ''a''), (2, ''b''), ... -- generated
) AS X(c1, c2) WHERE NOT (c1 IS NULL AND c2 IS NULL) -fixed
Cheers
Serge
--
Serge Rielau
DB2 Solutions Development
IBM Toronto Lab
这篇关于VALUES声明的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!