· 7 years ago · Mar 04, 2019, 03:12 PM
1drop table if exists Tabela1
2drop table if exists Tabela2
3drop table if exists Tabela3
4go
5create table Tabela1
6(
7ID int primary key identity,
8Nazwisko varchar(max) not null,
9Data_Urodzenia date not null
10)
11go
12create table Tabela2
13(
14ID int primary key identity,
15Nazwisko varchar(max) not null,
16Miasto varchar(max) not null
17)
18go
19create table Tabela3
20(
21ID int primary key identity,
22Nazwisko varchar(max) not null,
23Pensja int not null
24)
25go
26insert into Tabela1 values ('Kowalski','1980-01-01')
27insert into Tabela1 values ('Nowak','1990-01-01')
28insert into Tabela1 values ('Malinowska','2000-01-01')
29insert into Tabela1 values ('Kowalska','1970-01-01')
30go
31insert into Tabela2 values ('Malinowska','Gdynia')
32insert into Tabela2 values ('Kowalska','Gdańsk')
33insert into Tabela2 values ('Kowalski','Gdańsk')
34insert into Tabela2 values ('Nowak','Sopot')
35go
36insert into Tabela3 values ('Kowalski',5000)
37insert into Tabela3 values ('Nowak',6000)
38insert into Tabela3 values ('Kowalska',4500)
39insert into Tabela3 values ('Malinowska',5500)
40go
41--zad 6
42create procedure LudzieZGD
43as
44select Tabela1.Nazwisko,Miasto,Pensja from Tabela1 join Tabela2 on Tabela1.Nazwisko = Tabela2.Nazwisko join Tabela3 on Tabela1.Nazwisko = Tabela3.Nazwisko where Miasto = 'Gdańsk';
45go
46--zad 7
47create procedure LudzieZM (@mias varchar(max))
48as
49select Tabela1.Nazwisko,Miasto,Pensja from Tabela1 join Tabela2 on Tabela1.Nazwisko = Tabela2.Nazwisko join Tabela3 on Tabela1.Nazwisko = Tabela3.Nazwisko where Miasto = @mias;
50go
51
52exec LudzieZGD
53exec LudzieZM 'Gdynia'
54
55drop procedure LudzieZGD
56drop procedure LudzieZM
57
58
59--zad 8
60select Miasto, count(Miasto) as Ilosc_Mieszkancow from Tabela2 group by Miasto
61
62--zad 9
63select Tabela1.Nazwisko, year(Data_Urodzenia) as rok_Urodzenia,pensja from Tabela1 join Tabela3 on Tabela1.Nazwisko = Tabela3.Nazwisko where year(Data_Urodzenia) > 1985 and Pensja > 5700
64
65--zad 10
66select Tabela1.Nazwisko, year(Data_Urodzenia) as rok_Urodzenia,DATEDIFF(year, Data_Urodzenia,GETDATE()) AS wiek, pensja,Tabela2.Miasto from Tabela1 join Tabela3 on Tabela1.Nazwisko = Tabela3.Nazwisko join Tabela2 on Tabela1.Nazwisko = Tabela2.Nazwisko where year(Data_Urodzenia) > 1985 and Pensja > 5700