繁体   English   中英

如何使用SQL查询在表中的两个字段之间进行减法

[英]How to do subtraction between two fields in a Table using an SQL query

我想使用SQL查询显示从两个不同的列到第三列的两个值的减法。

这是表结构:

------------------------------------
id | subject | Time1 | Time2| Time3
------------------------------------
1  | String1 | 50    |  78  | 
2  | String2 | 60    |  99  |  
3  |         |       |      |

如果Time1和Time2都有数据并存储在Time3中,我想从Time1中减去Time2。

输出应该像

------------------------------------
id | subject | Time1 | Time2| Time3
------------------------------------
1  | String1 | 50    |  78  |  28
2  | String2 | 60    |  99  |  39
3  |         |       |      |

谢谢!

尝试这个

SELECT *, `Time2`-`Time1` AS `Time3` FROM `tablename`
`SELECT 
     id, 
     subject, 
     Time1, 
     Time2, 
     IF( Time1 != '' AND Time2 != '', Time2-Time1, '') as Time3 
FROM tbl_time`
SELECT
    id
    ,subject
    ,Time1
    ,Time2
    ,Time2-Time1 as Time3
FROM tbl

假设Time1Time2的数列,你可以使用一个简单的减法:

select id, subject, Time1, Time3, Time2 - Time1 as Time3 from myTable

试试这个

select id, subject, Time1, Time2, Time2-Time1 as Time3  from mytable

这将检查在数据的存在Time1Time2 :如果有足够的数据, Time3 = Time2 - Time1 ; 否则为null

select id, subject, Time1, Time2, 
   ifnull(Time1, null, ifnull(Time2, null, Time2 - Time1)) as Time3 
from myTable

如果Time1和Time2是日期时间字段,则应在MySQL中使用TIMEDIFF函数以能够正确格式化Time3字段。

SELECT id, subject, Time1, Time2, TIMEDIFF(Time1, Time2) as Time3 
  FROM tbl

http://www.w3resource.com/mysql/date-and-time-functions/mysql-timediff-function.php

尝试这个

SELECT id, subject, Time1, Time2, CONCAT(Time2 - Time1) AS Time3 FROM tabel

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM