Ms Sql de veri çekmek için kullanılan prosedür ile veritabanına bağlı birbiriyle alakalı olan birden fazla tablodan tek seferde veri çekmek için INNER JOIN kullanabilirsiniz.
Bunun için birbiriyle ilişkili tabloları "FROM" altına yerleştirirken eşleştiği kolonları belirtmelisiniz. Tabii ki bu eşleşmede taraflardan bir tanesindeki kolon "unique" olarak belirtilmelidir.
Mesela "haberler" tablosundan ve "yazarlar" tablosundan veri çekerken "haberler" içindeki "yazarID" sini "yazarlar" tablosu içindeki unique "yazarID" ile eşleştirmelisiniz. Bu sayede tek seferde iki tablodan da uygun verileri çekebilirsiniz.
CREATE PROCEDURE [dbo].[getPost]
@ID int
AS
BEGIN
SELECT
POS.ID,
POS.title,
ATH.realName AS 'realName',
ATH.image AS 'avatar'
FROM
posts AS POS
INNER JOIN authors AS ATH ON POS.authorID = ATH.ID
WHERE
POS.ID = @ID
ORDER BY
POS.ID DESC
END