当前位置: 首页 > 编程笔记 >

MySQL中获取日期之间的差值并计算薪水

程吕恭
2023-03-14
本文向大家介绍MySQL中获取日期之间的差值并计算薪水,包括了MySQL中获取日期之间的差值并计算薪水的使用技巧和注意事项,需要的朋友参考一下

假设您需要获取一个月的日期(JoiningDate – EndDate)之间的差,即天数来计算工资。假设每天的工资是300;因此,对于20天,它将是6000。以同样的方式,对于27天,它将是8100。

对于我们的示例,让我们首先创建一个表

create table DemoTable
   -> (
   -> JoinDate date,
   -> EndDate date
   -> ,
   -> Value int
   -> );

使用插入命令在表中插入一些记录-

insert into DemoTable values('2019-01-01','2019-01-31',500);

insert into DemoTable values('2019-02-12','2019-02-25',900);

使用select语句显示表中的所有记录-

select *from DemoTable;

输出结果

这将产生以下输出-

+------------+-------------+-------+
| JoinDate   | EndDate     | Value |
+------------+-------------+-------+
| 2019-01-01 | 2019-01-31  | 500   |
| 2019-02-12 | 2019-02-25  | 900   |
+------------+-------------+-------+
2 rows in set (0.00 sec)

以下是计算工资的查询。对于日期差,使用DATEDIFF()-

select ABS(DATEDIFF(JoinDate,EndDate) * Value) AS Total from DemoTable;

输出结果

这将产生以下输出-

+-------+
| Total |
+-------+
| 15000 |
| 11700 |
+-------+
2 rows in set (0.14 sec)

 类似资料:
  • 问题内容: 我在-type字段中将上次登录时间存储在MySQL中。当用户登录时,我想获取上次登录时间与当前时间(我使用)之间的时差。 我该如何计算? 问题答案: 使用MySQL函数。例如,您可以使用: 在您的情况下,函数的第三个参数将是当前登录时间()。第二个参数是上次登录时间,该时间已在数据库中。

  • 问题内容: 在我的代码中,日期之间的差异是错误的,因为它应该是38天而不是8天。我该如何解决? 问题答案: 问题出在变量中。月以Capital M表示。 尝试更改为: 有关更多信息,请参见此javadoc。 编辑: 这是代码,如果您想以注释的方式打印差异: 希望对您有所帮助!

  • 问题内容: 我想以小时/分钟/秒为单位计算两个日期之间的差异。 我的代码在这里有一个小问题: 这应该产生: 但是我得到这个结果: 有人可以在这里看到我在做什么错吗? 问题答案: 尝试 注意:这假定diff是非负数。

  • 问题内容: 我已经看到了许多方法,如何根据特定的日期组件(例如,天,小时,月等)来计算两个日期之间的差异 我还没有看到的是如何使用实际Date对象进行计算。就像是 我已经看到了 iOS 10中引入的类型,但是根据文档DateInterval [it]不支持反向间隔,即持续时间小于0且结束日期在时间上早于开始日期的间隔。 这样就很难计算日期,尤其是当您不知道哪个是较早的日期时。 是否有任何干净整洁的

  • 问题内容: 如何计算2010年1月1日至2010年2月3日之间的日期? 问题答案: 编辑: 请记住,对象表示确切的时刻,它们没有任何关联的时区信息。当您使用例如一个字符串转换为日期时,从配置的时区的时间转换。因此,两个对象之间的秒数 始终 是时区不可知的。 此外,本文档还指定可可的时间实现方式不包含leap秒,因此,如果您需要这种准确性,则需要滚动自己的实现方式。

  • 问题内容: 我想计算两个日期时间字段之间的月份数。 有没有比获得unix时间戳和除以2592 000(秒)并在MySQL中四舍五入更好的方法了? 问题答案: 该DATEDIFF功能可以给你的天数两个日期之间。由于…您如何定义一个月,哪个更准确?(28、29、30或31天?)

  • 问题内容: 如何以格式计算两个日期之间的差并以秒或毫秒为单位获取结果? 问题答案: 因此,您可以为您的目的使用。

  • 问题内容: 我陷入MySQL中的问题。我想获取两个日期时间项之间的记录数。 例如: 我的表中有一列名为“ created”的数据类型。 我想计算在“今天的4:30 AM”和“当前日期时间”之间的日期时间创建的记录。 我尝试了MySQL的一些功能,但仍然没有运气。 你能帮我吗?谢谢。 问题答案: 可能与: 或使用: 您可以根据需要更改日期时间。可以使用或获取所需的日期。