【问题标题】:Two tables having same composite key具有相同复合键的两个表
【发布时间】:2014-02-12 09:30:15
【问题描述】:

我有两个具有相同组合键的表。 以下是表格

表 T1

No  |  Date        |  S_hour
----+---------------+-------
1   |  2012-01-01  |  8
1   |  2012-01-02  |  8
1   |  2012-01-03  |  8
2   |  2012-01-01  |  8
2   |  2012-01-02  |  8
2   |  2012-01-03  |  8

表 T2

No  |  Date        |  L_hour
----+---------------+-------
1   |  2012-01-01  |  8
1   |  2012-01-02  |  3
1   |  2012-01-03  |  8
2   |  2012-01-01  |  2
2   |  2012-01-02  |  8
2   |  2012-01-03  |  8

S_hour 是预定时间,L_hour 是休假时间。

在我的查询输出中我想要 S_hour - L_hour.Following 应该是查询输出 查询输出

No  |  Date        |  S_hour - L_hour
----+---------------+-------
1   |  2012-01-01  |  0
1   |  2012-01-02  |  5
1   |  2012-01-03  |  0
2   |  2012-01-01  |  6
2   |  2012-01-02  |  0
2   |  2012-01-03  |  0

提前致谢

【问题讨论】:

  • 您的标签有冲突:MySQL、SQL Server 的 T-SQL 和 Oracle 的 PL/SQL。是哪一个?

标签: mysql sql tsql plsql


【解决方案1】:
select  t1.No
,       t1.Date
,       t1.S_hour - t2.L_hour
from    Table1 t1
join    Table2 t2
on      t1.No = t2.No
        and t1.Date = t2.Date

【讨论】:

    【解决方案2】:

    类似的东西

     SELECT T1.No, T1.Date, s_hour - L_hour AS result
     FROM T1 INNER JOIN
     T2 ON t1.No = t2.No AND 
     T1.Date = T2.Date
    

    【讨论】:

      【解决方案3】:

      SQL 查询:

      SELECT t1.no, t1.date1, t1.s_hour - t2.l_hour FROM t1, t2 
      WHERE t1.no=t2.no AND t1.date1=t2.date1;
      

      小提琴:Demo

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-01-13
        • 2015-01-21
        • 1970-01-01
        • 1970-01-01
        • 2016-10-23
        • 1970-01-01
        相关资源
        最近更新 更多