39 lines
1.2 KiB
Transact-SQL
39 lines
1.2 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS uspGetOsszefuggoSzakGyakosCsoportok
|
|
GO
|
|
|
|
CREATE PROCEDURE uspGetOsszefuggoSzakGyakosCsoportok
|
|
@pOsszefuggoSzakGyakTipus INT
|
|
,@pOktNevKatTipus INT
|
|
,@pTanevId INT
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
|
|
SELECT CASE
|
|
WHEN osztalyCsoport.C_NEV NOT LIKE '%[^0-9]%'
|
|
THEN CAST(LEFT(osztalyCsoport.C_NEV, 9) AS INT)
|
|
ELSE 2147483647
|
|
END AS NumberOrder
|
|
,CASE
|
|
WHEN LEFT(osztalyCsoport.C_NEV, 1) BETWEEN '0'
|
|
AND '9'
|
|
AND osztalyCsoport.C_NEV LIKE '%[^0-9]%'
|
|
THEN CAST(LEFT(SUBSTRING(osztalyCsoport.C_NEV, 1, PATINDEX('%[^0-9]%', osztalyCsoport.C_NEV) - 1), 9) AS INT)
|
|
ELSE 2147483647
|
|
END AS NumberAndTextOrder
|
|
,csoport.ID AS ID
|
|
,osztalyCsoport.C_NEV AS Nev
|
|
FROM T_CSOPORT_OSSZES csoport
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES osztalyCsoport ON osztalyCsoport.ID = csoport.ID
|
|
AND osztalyCsoport.C_FELADATKATEGORIAID = @pOktNevKatTipus
|
|
AND osztalyCsoport.TOROLT = 'F'
|
|
WHERE csoport.C_TIPUSA = @pOsszefuggoSzakGyakTipus
|
|
AND csoport.TOROLT = 'F'
|
|
AND csoport.C_ALTANEVID = @pTanevId
|
|
ORDER BY NumberOrder ASC
|
|
,NumberAndTextOrder ASC
|
|
,osztalyCsoport.C_NEV ASC
|
|
END
|
|
GO
|
|
|
|
|