1

我面临一个简单的问题。我一直使用 MS SQL 和 MySQL,这是我第一次使用 SQLite。我想从下表中获取数据,其中日期列中的月份等于提供的月份。

RecNo feesId memberId feesAmount feesReceipt feesDate   feesPaidTillMonth feesPaidTillYear 
----- ------ -------- ---------- ----------- ---------- ----------------- ---------------- 
   1      1       15      10.00 fsadfdsf    2013-08-10                11             2013 
   2      2        5     100.00 122314      2013-08-10                 3             2015 
   3      3       13     444.00 sda         2013-08-10                 1             2013 
   4      4        5      66.50 5564        2013-08-10                11             2013 

我想获取所有行 'WHERE month(feesDate) = 08'
我知道月份函数不是 SQLite 的,但我想在这里做类似的事情。我搜索了谷歌,我得到了这个:

 strftime('%m',[memberFees].[feesDate]) 

但它并没有做我想要的东西。我想要这个函数的整个查询是这样的:

 SELECT [memberList].[memberId],[memberList].[memberFName], [memberList].[memberLName], 
[memberFees].[feesAmount],[memberFees].[feesDate],[memberFees].[feesPaidTillMonth],[memberFees].[feesPaidTillMonth]
FROM [memberFees] INNER JOIN [memberList] on [memberfees].[memberId] = [memberList].[memberId]
WHERE
strftime('%m',[memberFees].[feesDate]) = 8 AND [memberList].[memberLevel] = 3
4

1 回答 1

2

SQLite 的strftime()函数返回带有%m前导零的月份:

strftime('%m',[memberFees].[feesDate]) = '08'
于 2013-08-10T19:04:09.937 回答