Sql 第1列为YY(年),第2列为MMDD(月、日)

Sql 第1列为YY(年),第2列为MMDD(月、日),sql,db2,Sql,Db2,我试图根据两列提取数据,第一列是YY年数据,第二列是MMDD月,日期 如何编写sql语句来提取从第13年12月到第13年12月的数据。第1步-确定您想要的世纪。提供一些您尝试过的示例,一些表结构。。。除了你给我们的东西之外,我们在这里帮助解决问题,而不是为你做。我尝试了从表中选择*,其中表A>=13和表B>=1201;我们需要知道两列的数据类型和可能的大小,然后才能猜测如何进行。如果列是VARCHAR,它将与NUMERIC甚至CHAR非常不同。仅仅告诉我们这些列代表什么是不够的,但到目前为止还不

我试图根据两列提取数据,第一列是YY年数据,第二列是MMDD月,日期


如何编写sql语句来提取从第13年12月到第13年12月的数据。

第1步-确定您想要的世纪。提供一些您尝试过的示例,一些表结构。。。除了你给我们的东西之外,我们在这里帮助解决问题,而不是为你做。我尝试了从表中选择*,其中表A>=13和表B>=1201;我们需要知道两列的数据类型和可能的大小,然后才能猜测如何进行。如果列是VARCHAR,它将与NUMERIC甚至CHAR非常不同。仅仅告诉我们这些列代表什么是不够的,但到目前为止还不能提供数据。
select *
    from table1
    where (
           (yy='13' and substring(mmdd, 1, 2) = '12') or 

           (
           yy>'13' and yy < cast(year(CURDATE() as varchar) 
           ) or

           (
           yy>'13' and yy = cast(year(CURDATE() as varchar) and  substring(mmdd, 1, 2) < cast(month(CURDATE() as varchar) 
           ) or

           (
           yy>'13' and yy = cast(year(CURDATE() as varchar) and  substring(mmdd, 1, 2) = cast(month(CURDATE() as varchar) and  substring(mmdd, 3, 4) <= cast(day(CURDATE() as varchar) 
           )
          )