我有3个表,如下面的
User Advertisement Payment
id id id
name title user_id
address description ad_id
payment_type
对于这些表格,我想为登录用户生成如下表格,无论payment_type
如何:
id title is_paid
1 first ad 0 //if not paid
2 second ad 1 //paid
3 third ad 1
4 fourth ad 0
5 fifth ad 1
到目前为止,我无法执行任何操作,因为我不知道如何在mysql
m中添加额外的列或在查询中使用if condition
。
我不是要求你为我编写代码,但是你可以让我知道使用什么方法吗?
答案 0 :(得分:2)
如果我理解正确,您可以outer join
使用case
声明:
select a.id, a.title,
case when p.id is not null then 1 else 0 end is_paid
from advertisement a
left join payment p on a.id = p.ad_id and p.user_id = 123