我有一个名为TABLE1的表,有3列:month distinct_count,cobrand_id。
我想在distinct_count列中调用与month和cobrand_id列匹配的行。
表1:
例如,我在另一个名为Table2的表上使用以下查询,该表与Table1有一些重叠的字段:
SELECT to_char(transaction_date, 'YYYY-MM') as month,
cobrand_id,
Amount,
CASE WHEN month = Table1.month and cobrand_id = Table2.cobrand_id
THEN #return matching distinct_count value from Table 1# as newval
FROM Table2
WHERE DESCRIPTION iLIKE '%Criteria%';
我需要帮助计算newval。
逻辑上,newval应该从TABLE1中的distinct_count列返回与月份和时间匹配的值。从TABLE2上面的查询返回的cobrand_id值。
编辑:TABLE2没有名为distinct_count的列。我想在我的查询中将每行的值distinct_count拉为newval,其中month& cobrand_id匹配TABLE1和TABLE2。
答案 0 :(得分:1)
根据你的sql句子,因为你只提到了3列,但你使用的是'transaction_date'
,'DESCRIPTION'
和'Amount'
SELECT
to_char(Table2.transaction_date, 'YYYY-MM') as month,
Table2.cobrand_id,
Table2.Amount,
Table1.distinct_count as newval
FROM
Table2
inner join Table1
on to_char(Table2.transaction_date, 'YYYY-MM') = Table1.month
and Table2.cobrant_id = Table1.cobrant_id
WHERE
Table2.DESCRIPTION LIKE '%Criteria%';