如何将新列添加到临时表中

时间:2014-03-31 10:41:12

标签: mysql sql

我有一个存储过程,我将一些数据导入临时表(temp2)。数据如下:

component_id        pub_id
52663               12345
52663               12346
52663               12347
52663               12348
45632               21456
45632               21457
45632               21458

现在我希望遍历列pub_id的项目,并为每个pub_id,在其他表中查找文章日期的值。我使用以下代码:

SET @getid = CURSOR FOR select pub_id from #temp2
OPEN @getid
FETCH NEXT
FROM @getid INTO @pub_id
WHILE @@FETCH_STATUS = 0

BEGIN

Select Date_Value from CUSTOM_META where ITEM_ID = @pub_id and KEY_NAME = 'ArticleDate'

FETCH NEXT
FROM @getid INTO @pub_id

END

虽然我能够获取每个pub_id的日期,但我不知道如何在每个pub_id旁边插入它们。我希望输出如下:

component_id        pub_id     Date_Value
    52663           12345      12/11/11
    52663           12346      12/23/12
    52663           12347      01/30/13
    52663           12348      09/23/07
    45632           21456      09/23/07
    45632           21457      09/23/07
    45632           21458      09/23/07

如何实现此输出?

1 个答案:

答案 0 :(得分:2)

试试这个:

SELECT t.component_id, t.pub_id, m.Date_Value
FROM #temp2 t
JOIN CUSTOM_META m
ON t.pub_id = m.ITEM_ID
AND m.KEY_NAME = 'ArticleDate'