SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF OBJECT_ID('[dbo].[sp_GetFelhasznaloErintettTargyai]') IS NOT NULL BEGIN DROP PROCEDURE [dbo].[sp_GetFelhasznaloErintettTargyai] END GO -- ============================================= -- Author: -- Create date: <2016. 03. 03.> -- Description: -- ============================================= CREATE PROCEDURE [dbo].[sp_GetFelhasznaloErintettTargyai] @felhasznaloId int AS BEGIN SET NOCOUNT ON; with q (ID,Nev,Tipus) as (select T_TANTARGY.ID, T_TANTARGY.C_NEV Nev, '1' Tipus from T_TANTARGY inner join T_FOGLALKOZAS on T_FOGLALKOZAS.C_TANTARGYID = T_TANTARGY.ID left join T_FOGLALKOZASOK_TANAROK on T_FOGLALKOZASOK_TANAROK.C_FOGLALKOZASOKID = T_FOGLALKOZAS.ID where T_TANTARGY.TOROLT = 'F' and T_TANTARGY.C_FOTARGYID is null and T_FOGLALKOZASOK_TANAROK.C_TANAROKID = @felhasznaloId) select ID,Nev,tipus from q union select distinct T_TANTARGY.ID, T_TANTARGY.C_NEV Nev, '3' Tipus from T_TANTARGY inner join T_FOGLALKOZAS on T_FOGLALKOZAS.C_TANTARGYID = T_TANTARGY.ID and T_FOGLALKOZAS.TOROLT = 'F' inner join T_OSZTALYCSOPORT on T_OSZTALYCSOPORT.ID = T_FOGLALKOZAS.C_OSZTALYCSOPORTID and T_OSZTALYCSOPORT.TOROLT = 'F' inner join T_OSZTALY on T_OSZTALY.ID = T_OSZTALYCSOPORT.ID and T_OSZTALY.TOROLT = 'F' where T_TANTARGY.TOROLT = 'F' and (T_OSZTALY.C_OSZTALYFONOKID = @felhasznaloId or T_OSZTALY.C_OFOHELYETTESID = @felhasznaloId) and T_TANTARGY.ID not in (select ID from q) END