Mysql 在这种情况下,如何查询两个表之间的数据?

Mysql 在这种情况下,如何查询两个表之间的数据?,mysql,sql,Mysql,Sql,有三个表,我主要想查询交易 User ----- id Debit ----- id amount * user_id create_date Credit ------ id amount * user_id create_date 因此,我希望在日期之前获得特定用户订单的交易,如下所示 $150 1 2014-06-15 <== debit $200 1 2014-06-16 <===credit $150 1 2014-06-15使用UNION

有三个表,我主要想查询交易

User
-----
id

Debit
-----
id
amount
* user_id
create_date

Credit
------
id
amount 
* user_id
create_date
因此,我希望在日期之前获得特定用户订单的交易,如下所示

  $150  1  2014-06-15   <== debit
  $200  1  2014-06-16  <===credit

$150 1 2014-06-15使用
UNION ALL
加入
,因为您希望
贷方
借方
行分开。如果要从表
用户
中获取列,则需要额外连接到该表


使用
UNION ALL
not
JOIN
,因为您希望
credit
debit
行分开。如果要从表
用户
中获取列,则需要额外连接到该表


使用
UNION ALL
not
JOIN
,因为您希望
credit
debit
行分开。如果要从表
用户
中获取列,则需要额外连接到该表


使用
UNION ALL
not
JOIN
,因为您希望
credit
debit
行分开。如果要从表
用户
中获取列,则需要额外连接到该表


谢谢是的,如果有一个用户名字段(在用户表中),并且我想包括在查询中,如何加入?明白了,谢谢帮助谢谢。是的,如果有一个用户名字段(在用户表中),并且我想包括在查询中,如何加入?明白了,谢谢帮助谢谢。是的,如果有一个用户名字段(在用户表中),并且我想包括在查询中,如何加入?明白了,谢谢帮助谢谢。是的,如果有一个用户名字段(在用户表中),并且我想在查询中包括,如何加入?明白了,谢谢帮助
SELECT  d.amount, d.create_date, 'debit' transactionType,
        u.user_name
FROM    Debit d
        INNER JOIN User u
            ON d.id = u.user_id
WHERE   u.user_id = 1
UNION ALL
SELECT  c.amount, c.create_date, 'credit' transactionType,
        u.user_name
FROM    Credit c
        INNER JOIN User u
            ON c.id = u.user_id
WHERE   u.user_id = 1
ORDER   BY create_date