2009-08-28 44 views
0

我在這裏遇到了存儲過程問題,我不知道該怎麼做或如何處理這個問題。我敢肯定這裏有個天才能幫助我! :d使存儲過程從三個不同的表中返回5個小數據

alt text

我希望我的存儲過程返回Anuncio的idAnuncio,TITULO,PRECIO,descripcion,並利用它的外鍵返回Categoria的descripcion和Imagenes的imagen畫質。我想要發送一個idCategoria(int)變量從我的應用程序,所以存儲過程可以去:「啊,你想看到所有具有類別1的項目,這裏是亞去。 「它會返回一個或數組,其中包含所有內容。

請幫忙!我完全失去了,我只需要一個工作的例子來找出其餘的。

謝謝你們! ;)

回答

2
CREATE PROC DoStuff 
    @Parameter int 
AS 
SET NOCOUNT ON; 

SELECT 
    * 
FROM 
    Categoria C 
    JOIN 
    Anuncio A ON C.idCategoria = A.idCategoria 
    JOIN 
    Imagenes I ON A.idImagen = I.idImagen 
WHERE 
    C.idCategoria = @Parameter; 
GO 
+0

-1,他希望 – LorenVS 2009-08-28 14:31:54

+0

它現在...它展示瞭如何使用參數,雖然這可以說是想要什麼OP不獲取任何的imagen畫質細節... – gbn 2009-08-28 14:34:14

+0

我認爲您的解決方案將工作,但我得到Anuncio是一個無效的對象名稱的錯誤。我沒有與Categoria發生錯誤,爲什麼會在Anuncio上發生?檢查http://bit.ly/3Dfjlu的問題。謝謝您的幫助。 :) – 2009-08-28 14:39:48

1

嘗試以下操作:

DECLARE @CategoriaID INT 
SET @CategoriaID = 1 

SELECT a.idAnuncio, 
     a.titulo, 
     a.precio, 
     a.descripcion, 
     c.descripcion, 
     i.imagen 
FROM bo.Anuncio a 
    INNER JOIN dbo.Categoria c 
     ON a.idCategoria = c.idCategoria 
    INNER JOIN dbo.Imagenes i 
     ON a.idImagen = i.idImagen 
WHERE a.idCategoria = @CategoriaID 

這是一個查詢,但你應該能夠把它變成一個SP很容易。可能有一些拼寫錯誤,但它應該讓你開始。

相關問題