如何忽略第一个日期的空值?

我有这张桌子:

dates   var1    var2
2004    null    null
2005    null    null
2006    null    null
2007    null    null
2008    25      null
2009    30      null
2010    50       30
2011    60       50
2012    null     70
2013    null     80
2014    null     90

我需要一个查询结果如下:

dates   var1    var2
2008    25      null
2009    30      null
2010    50       30
2011    60       50
2012    null     70
2013    null     80
2014    null     90

我尝试过:

select * from table where var1 is not null 

,但必须保留后续的空值。

yhj861212 回答:如何忽略第一个日期的空值?

如果您已声明要选择<div class="infusion-field"> <label for="inf_field_LastName">Last Name *</label> <input class="infusion-field-input" id="inf_field_LastName" name="inf_field_LastName" placeholder="Last Name *" type="text" /> </div> <div class="infusion-field"> <label for="inf_field_Email">Email *</label> <input class="infusion-field-input" id="inf_field_Email" name="inf_field_Email" placeholder="Email *" type="text" /> </div> <input id="Contact0_oexfb" name="Contact0_oexfb" type="hidden" value="oexfb"> var1都不都是var2的所有行,或者换句话说,如果两者都是不是null。然后就像

null
,

您可以使用:

select * from table where nvl(var1,var2) is not null
,

逻辑似乎是,对于返回的集合,两个列都不应该同时为null。这意味着要考虑两个列同时为null的情况 (var1 is null and var2 is null,并取其补集(not)集。因此,您需要:

select *
  from tab
 where not (var1 is null and var2 is null)

或者通过nvl2()考虑Oracle的addition功能,算术选项会更好:

select *
  from tab
 where nvl2(var1,1,0) + nvl2(var2,0) > 0 

其中0的值是null的返回值,1的值是non-null中每个列值的返回值nvl2()的返回值import xlrd file=u'C:/Landau/task/6200.xlsx' try: book = xlrd.open_workbook(file,encoding_override="cp1251") except: book = xlrd.open_workbook(file) print("The number of worksheets is {0}".format(book.nsheets)) print("Worksheet name(s): {0}".format(book.sheet_names())) sh = book.sheet_by_index(0) print("{0} {1} {2}".format(sh.name,sh.nrows,sh.ncols)) print("Cell D30 is {0}".format(sh.cell_value(rowx=29,colx=3))) for rx in range(sh.nrows): print(sh.row(rx)) 作为函数的组成部分。另外。

Demo

本文链接:https://www.f2er.com/3095958.html

大家都在问