回答

收藏

MySQL查询返回等于或大于特定日期的行,其中日期以年,月和日列分隔

技术问答 技术问答 473 人阅读 | 0 人回复 | 2023-09-12

MySQL表EMPLOYEE具有所有类型为int的列(beginyear,beginmonth,beginday,empid)。
! K  C2 o( W! W) M返回等于或大于日期2009/8/13的所有行的正确查询是什么?那是年,月,日。' y" Z' }3 n, C; n6 L
这样的查询是不正确的,因为它不会返回包含日期的行,例如2009/9/1(在下面的where子句中由beginday> = 13过滤掉)或2010/1/14。. g. Y8 ^: z& `4 z2 P/ \1 r/ z( I
SELECT *
8 Z  \( d' A. J. TFROM EMPLOYEE
; }) h4 c' g! Y% {1 ]where beginyear >= 2009
# I. J- P( P6 H) V# |4 N2 q  and beginmonth >= 8
2 p2 y- n: w5 b7 N) |6 K8 Y8 x8 Y  and beginday >=13$ d) Y" e% Q  N+ _1 ?+ l
假设我无法对架构进行任何更改,并且必须从JDBC创建某种查询才能获得结果。
/ ^/ F8 c. m2 b$ o               
& |$ z$ k* f  w1 T% X解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则