2011-07-06 107 views
0

可能重复:
trying to get the number of months查找差异

我有一个

      memberpayments table 
           totalamountpaid 
           exppayments 
           expmonthly payments 
           dueday 
           memberid 

我想找到像这里这样的DATEDIFF我已经找到了日期diff using c#

但我想用mysql

double equivalentPayments = totalamountpaid /expmonthly payments; 
    double monthdiff = Math.Ceiling(exppayments - equivalentPayments); 
    monthdiff -= 1; 

    int dueDay = 01; 

    DateTime expDate = DateTime.Today.AddMonths((int)monthdiff).AddDays(DateTime.Today.Day - dueDay); 

    int diff = DateTime.Today.Subtract(expDate).Days; 

我一直在使用日期DIFF试图找到日期差异,但它是给两个日期之间的差异,并没有给DATEDIFF像上述溶液(C#)。

我可以得到这些语句都在一个查询......用mysql ....

会不会有人请帮我出

+0

@OMG没有其他问题... – user682417

+1

@ user832283如果您包含一些示例数据,您尝试过的内容和示例输出(不正确和正确是最好的),而不是只是要求一些C#代码的端口 –

+1

你想得到的是'DATEDIFF'不给你? –

回答

1

的MySQL有一大套的日期时间函数。日期之间寻找差异是使用它们相当琐碎的:)

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

如果我理解正确的,你追求的是两个日期之间的天数的差异。这可以使用DATEDIFF(a,b):)

+0

你试过了吗?但是它给出了两个日期之间的日期差异,但它没有给出像上面的解决方案 – user682417

+0

有多少种不同的方式可以给你两天之间的天差异? :S如何“int diff = DateTime.Today.Subtract(expDate).Days;工作?和它如何不同于DATEDIFF(DATE(NOW()),expDate)? – JustDanyul

+0

我知道datediff是在两个日期之间DateDiff(a,b)...我想要这样的日期差异.... DateTime expDate = DateTime.Today.AddMonths((int)monthdiff).AddDays(DateTime.Today.Day - dueDay); int diff = DateTime.Today.Subtract(expDate).Days – user682417