Sql 如何填充空值,如up结果
例如,我有一个如下表:Sql 如何填充空值,如up结果,sql,sql-server,Sql,Sql Server,例如,我有一个如下表: Plan Name 211 - SELET HIAG TEST1 NULL TEST2 NULL TEST3 NULL TEST4 NULL TEST5 213 - SOUND III TEST6 NULL TEST7 NULL TEST8 NULL TEST9 211 - BUBBLE TEST10 NULL TEST11 NULL TEST12 NULL TEST13 NULL TES
Plan Name
211 - SELET HIAG TEST1
NULL TEST2
NULL TEST3
NULL TEST4
NULL TEST5
213 - SOUND III TEST6
NULL TEST7
NULL TEST8
NULL TEST9
211 - BUBBLE TEST10
NULL TEST11
NULL TEST12
NULL TEST13
NULL TEST14
但应该是这样的:
Plan Name
211 - SELET HIAG TEST1
211 - SELET HIAG TEST2
211 - SELET HIAG TEST3
211 - SELET HIAG TEST4
211 - SELET HIAG TEST5
213 - SOUND III TEST6
213 - SOUND III TEST7
213 - SOUND III TEST8
213 - SOUND III TEST9
211 - BUBBLE TEST10
211 - BUBBLE TEST11
211 - BUBBLE TEST12
211 - BUBBLE TEST13
211 - BUBBLE TEST14
Ps:我没有一个标识列如果您有一个列指定顺序,您可以使用apply执行此操作:
select tprev.plan, t.name
from t outer apply
(select top 1 tprev.*
from t tprev
where tprev.plan is not null and tprev.?? <= t.??
order by tprev.?? desc
) tprev;
这个??用于指定排序的列。SQL表表示无序集。您需要一个列来指定顺序。