由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Database版 - 请问sql 有条件性的select columns
相关主题
请教一个query 优化的问题(filter keyword)一个oracle performance 的问题。
any group function reutrn null if there is null value?高手请进
SQL copy a table into a new table and add a new columnsql 题目求助
如何除去duplicate rows?谁能帮我看看这个Insert语句要怎么改一下?
sql query help请教一个SQL的问题
菜鸟问题,急sort two same tables SQL but different results
A rookie's query question请教一个sql问题
问个sql/ ssis的问题 谢谢!better way to compare nullable columns?
相关话题的讨论汇总
话题: null话题: col2话题: sql话题: cursor话题: 567
进入Database版参与讨论
1 (共1页)
h******y
发帖数: 25
1
求问大牛
如何在sql server中实现动态选择columns。
比如针对某一个特定id,我只想在结果中出现非null的column,如果改变id,结果中的
column应该是不一样的,请问这样的query能否实现呢?
谢谢!
s********e
发帖数: 893
2
有没有具体例子说说想干啥?想到decode或许可以实现。
h******y
发帖数: 25
3
具体例子如下:
select * from table -- gives the following output
server col2 col3 col4 col5 col6 col7 col8 col9 col10
1 1234 null null 678 987 890 null 567 null
1 4565 null null 234 67 56 null 345 null
2 null null 578 567 234 null 73 18 null
2 null null 626 289 395 null 84 399 null
3 567 null 845 null 987 674 null null 648
3 654 null 463 null 876 523 null null 921
Desired Output:
select * from where server = 1
sample out put Should look like this.
server col2 col5 col6 col7 col9
1 1234 678 987 890 567
1 4565 234 67 56 345
s**********o
发帖数: 14359
4
请问这种怎么办啊
1 null null null null null null null null null
你有一个默认的RULE,如果COL1无值,就接着往后走,一直到有值
这不是CURSOR的FOR LOOP吗?
h******y
发帖数: 25
5
这样就除了第一列什么都不显示。这样的loop怎么在sql server中实现啊?

【在 s**********o 的大作中提到】
: 请问这种怎么办啊
: 1 null null null null null null null null null
: 你有一个默认的RULE,如果COL1无值,就接着往后走,一直到有值
: 这不是CURSOR的FOR LOOP吗?

s**********o
发帖数: 14359
6
你去看CURSOR就知道了

【在 h******y 的大作中提到】
: 这样就除了第一列什么都不显示。这样的loop怎么在sql server中实现啊?
s**********o
发帖数: 14359
7
ISNULL COALESCE也不行,只能CURSOR去LOOP了
h******y
发帖数: 25
8
恩,select case when也不行。cursor从来没用过

【在 s**********o 的大作中提到】
: ISNULL COALESCE也不行,只能CURSOR去LOOP了
i*******d
发帖数: 81
9
why data appears in pairs? is it always true?
What is the desired output if you have:
server col2 col3 col4 col5 col6 col7 col8 col9 col10
1 1234 null null 678 987 890 null 567 null
1 null null null 234 67 56 null 345 null

null
null
null
648
921

【在 h******y 的大作中提到】
: 具体例子如下:
: select * from table -- gives the following output
: server col2 col3 col4 col5 col6 col7 col8 col9 col10
: 1 1234 null null 678 987 890 null 567 null
: 1 4565 null null 234 67 56 null 345 null
: 2 null null 578 567 234 null 73 18 null
: 2 null null 626 289 395 null 84 399 null
: 3 567 null 845 null 987 674 null null 648
: 3 654 null 463 null 876 523 null null 921
: Desired Output:

d****n
发帖数: 12461
10
要不nullif(col2,'NA')?

【在 h******y 的大作中提到】
: 这样就除了第一列什么都不显示。这样的loop怎么在sql server中实现啊?
相关主题
菜鸟问题,急一个oracle performance 的问题。
A rookie's query question高手请进
问个sql/ ssis的问题 谢谢!sql 题目求助
进入Database版参与讨论
c*****d
发帖数: 6045
11
首先,这个表这么设计不好
不过估计你也不能改表的设计
类似是同一时间N个传感器传回过来的数据
其次,cursor不是干这个用的
cursor是move from one row to the other
这个就是一个简单的nested if
if ( col2 is not null )
return col2
elsif ( col3 is not null )
return col3
elsif ( col4 is not null )
return col4
...
B*****g
发帖数: 34098
12
你没审题,哈哈

【在 c*****d 的大作中提到】
: 首先,这个表这么设计不好
: 不过估计你也不能改表的设计
: 类似是同一时间N个传感器传回过来的数据
: 其次,cursor不是干这个用的
: cursor是move from one row to the other
: 这个就是一个简单的nested if
: if ( col2 is not null )
: return col2
: elsif ( col3 is not null )
: return col3

l******b
发帖数: 39
13

Use dynamic sql with DBMS_SQL?

【在 B*****g 的大作中提到】
: 你没审题,哈哈
h******y
发帖数: 25
14
这个例子是我在网上抓的,有人和我问同样的问题没得到解决,其实我这是没有成对的。

null

【在 i*******d 的大作中提到】
: why data appears in pairs? is it always true?
: What is the desired output if you have:
: server col2 col3 col4 col5 col6 col7 col8 col9 col10
: 1 1234 null null 678 987 890 null 567 null
: 1 null null null 234 67 56 null 345 null
:
: null
: null
: null
: 648

h******y
发帖数: 25
15
会不会太复杂呀?我这是要用在网页上,可能没法用动态的?

【在 l******b 的大作中提到】
:
: Use dynamic sql with DBMS_SQL?

i*******d
发帖数: 81
16
你没有回答我的问题啊。那个例子你要出什么结果?

的。

【在 h******y 的大作中提到】
: 这个例子是我在网上抓的,有人和我问同样的问题没得到解决,其实我这是没有成对的。
:
: null

1 (共1页)
进入Database版参与讨论
相关主题
better way to compare nullable columns?sql query help
sql 请教菜鸟问题,急
Access 里面两个 column不一样的table 能combine 到一起吗?A rookie's query question
How to split a column into several rows?问个sql/ ssis的问题 谢谢!
请教一个query 优化的问题(filter keyword)一个oracle performance 的问题。
any group function reutrn null if there is null value?高手请进
SQL copy a table into a new table and add a new columnsql 题目求助
如何除去duplicate rows?谁能帮我看看这个Insert语句要怎么改一下?
相关话题的讨论汇总
话题: null话题: col2话题: sql话题: cursor话题: 567