如何在两个选择之间使用mysql中的算术减去?

时间:2013-01-25 08:20:57

标签: mysql

select player.ActionTime from question_log log inner join player_question player 
where log.ActionType='96'

select player.ActionTime from question_log log inner join player_question player 
where log.ActionType='97'

如何在mysql语法中实现这一点?选择ActionType为96减去另一个为97的Actiontime。算术减去。

2 个答案:

答案 0 :(得分:3)

SELECT t96.ActionTime - t97.ActionTime
FROM
(
    select player.ActionTime 
    from question_log log 
    inner join player_question player 
    where log.ActionType='96'
) t96
CROSS JOIN
(
    select player.ActionTime 
    from question_log log 
    inner join player_question player 
    where log.ActionType='97'
) t97

请注意,您的两个查询之间似乎没有任何关联,因此我只能建议CROSS JOIN(笛卡尔积)。如果您有多行log.ActionType ='96'或log.ActionType = '97',您将拥有许多结果行。

答案 1 :(得分:0)

使用子查询:

SELECT player.ActionTime - (SELECT player.ActionTime from question_log log inner join     player_question player where log.ActionType='97' LIMIT 1)
from question_log log inner join player_question player where log.ActionType='96'