我真的不確定這個標題是否是我想說的,但它是最接近我能來的。我想要做的是從查詢中獲取初始結果,並在INSERT語句中的嵌套Select語句中使用它們。這裏是我的例子: 這是我最初的查詢,它給了我我正在尋找一個正確的作品;在嵌套SELECT語句中使用SQL結果變量
SELECT Min(Inquirer.ID) as MinID, Max(Inquirer.ID) as MaxID,
Min(Inquirer.Program) as MinProg, Max(Inquirer.Program) as MaxProg,
COUNT(Inquirer.Name) AS NumOccurrences
FROM Inquirer
GROUP BY Inquirer.Name
HAVING (COUNT(*) = 2)
結果顯示如下;
MinID MaxID MinProg MaxProg NumOccurrences
27 81 Pavilion Appleton 2
我想用MinID和MaxID值,我與一個嵌套的SELECT是這樣的一個相應的插件檢索;
Insert into Transfer(InquiryID_fk, ReferElsewhere, ReferMcLean, ReferExternal, ReferredFrom, TransferInquiryID_fk)
Values(SELECT Inquiry.ID from Inquiry
Where Inquiry.InquirerID_fk = MinID,'Yes',MaxProg,NULL,MinProg,
SELECT Inquiry.ID from Inquiry WHERE Inquiry.InquirerID_fk = MaxID)
這是真的它概括地說,不知道是否可以實現或如何完成它,我將不得不作出一個臨時表事先並遍歷,要得到的值? 任何幫助表示讚賞,感謝你在前進,
NickG
非常感謝您的建議,這項工作正如我所需要的。但是,有一件事令我困惑,看起來似乎有一半結果集向後給我MinProg和MaxProg,基本上MinProg應該是與MinID相關的程序,而MaxProg與MaxID相關聯,但是當它顯示MinProg時,程序與MaxID相關聯,反之亦然,任何想法爲什麼這可能是?再次感謝您對我的初始問題的幫助 – 2012-08-02 14:11:57
這是基於您使用Min(詢問者)的原始查詢。程序)作爲MinProg - 它不會以最低的ID返回程序,而是按字母順序返回程序。讓我編輯上面的... – podiluska 2012-08-02 14:14:53
請參閱上面的編輯答案 – podiluska 2012-08-02 14:20:32