Evo male igračke:
Code:
DECLARE @Lica TABLE (LiceId INT, Ime NVARCHAR(15), Prezime NVARCHAR(15))
INSERT INTO @Lica (LiceId, Ime, Prezime) VALUES (1, N'Jovan', N'Jovanović')
INSERT INTO @Lica (LiceId, Ime, Prezime) VALUES (2, N'Milan', N'Milanović')
INSERT INTO @Lica (LiceId, Ime, Prezime) VALUES (3, N'Marko', N'Marković')
INSERT INTO @Lica (LiceId, Ime, Prezime) VALUES (4, N'Mira', N'Jovanović')
INSERT INTO @Lica (LiceId, Ime, Prezime) VALUES (5, N'Jovana', N'Milovanović')
INSERT INTO @Lica (LiceId, Ime, Prezime) VALUES (6, N'Slađana', N'Perić')
INSERT INTO @Lica (LiceId, Ime, Prezime) VALUES (7, N'Zoran', N'Vidić')
INSERT INTO @Lica (LiceId, Ime, Prezime) VALUES (8, N'Zorica', N'Biljić')
INSERT INTO @Lica (LiceId, Ime, Prezime) VALUES (9, N'Milovan', N'Perišić')
DECLARE @I AS INT
DECLARE @Id AS INT
DECLARE @Vreme1 DATETIME
DECLARE @Vreme2 DATETIME
DECLARE @Vreme3 DATETIME
DECLARE @AAA NVARCHAR(100)
SET @Id = 5
SET @Vreme1 = GETDATE()
SET @I = 1
WHILE (@I < 10000)
BEGIN
SET @AAA = (SELECT Ime + ' ' + Prezime FROM @Lica WHERE LiceId = @Id)
SET @I = @I + 1
END
SELECT GETDATE() - @Vreme1
SET @Vreme2 = GETDATE()
SET @I = 1
WHILE (@I < 10000)
BEGIN
SET @AAA = (SELECT l.Ime + ' ' + l.Prezime FROM @Lica l INNER JOIN (SELECT @Id AS Id) t ON t.Id = l.LiceId)
SET @I = @I + 1
END
SELECT GETDATE() - @Vreme2
SET @Vreme3 = GETDATE()
SET @I = 1
WHILE (@I < 10000)
BEGIN
SET @AAA = (SELECT Ime + ' ' + Prezime FROM @Lica GROUP BY Ime, Prezime HAVING MAX(LiceId) = @Id)
SET @I = @I + 1
END
SELECT GETDATE() - @Vreme3
GO