![](/img/trans.png)
[英]Select a column from one tbl and insert into another column in an other table
[英]select one column from one table and other columns from another table
我有表格:
1. Users : user_id, user_name
2. Transaction : user_id, transaction_number, transaction_date
我想获取特定 transaction_date 的 user_id、transaction_number、transaction_date。 第一个表可能包含不同日期的重复 user_id,并且可能不包含特定日期的所有 user_id。 如果 user_id 在交易表中没有任何交易条目,则结果必须包含所有 user_id 并且其 transaction_number 和交易日期为 null。
例如:
user_id transaction_number transaction_date
1 10 12/04/2013
2 0 12/04/2013
3 0 12/04/2013
它显示只有 3 个用户并且只有 user_id 1 在 12/04/2013 有交易。
如果 transaction_number 为空,您可以将它替换为 0,具体取决于您使用的数据库类型。
Select u.User_id, transactions.transaction_number, '12/04/2013' as transaction_date
from Users u
left join ( Select user_id, Sum(transaction_number)
from Transaction
where transaction_date = '12/04/2013'
Group By user_id
) transactions
on transactions.User_id = u.user_id
select * from Transaction right outer join Users on Transaction.user_id = Users.user_id and Transaction.transaction_date = 'Apr 12 2013 12:00AM'
列出所有有交易的用户(如果有)。使用左连接。
select users.user_id,users.user_name,transaction.transaction_number, transaction.date from users left join transaction on users.user_id = transaction.user_id
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.