Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*1 */
- SELECT *
- FROM Uzytkownicy
- ORDER BY Aktywna_Faktura
- /*2 Zaznacz przedmioty w przedziale coenowym 800-1800* malejąco */
- SELECT *
- FROM Przedmioty
- WHERE Cena between 800 and 1800
- Order BY Cena DESC
- /*3 Zaznacz faktury użytkowników*/
- SELECT *
- FROM Dane_Faktur
- ORDER BY Id_Uzytkownika
- /*4zaznacz fakturowanych z miejscowości Dallas */
- SELECT *
- FROM Dane_Faktur
- WHERE Miejscowosc like 'Dallas'
- /*5zaznacz fakturowanych z Nazwiskiem Turner */
- SELECT *
- FROM Dane_Faktur
- WHERE Nazwisko like 'Turner'
- /*6Zaznacz pracowników z premią godzinową powyżej 8 zł i płacą powyżej 15 zł */
- SELECT *
- FROM Umowy
- WHERE Premia_Godzinowa > 8 and Placa > 20
- /*7zaznacz przedmioty z przedziału cenowego 1500 3000*/
- SELECT *
- FROM Przedmioty
- WHERE Cena between 1500 and 3000
- /*8zaznacz przedmioty z przedziału cenowego 900 1150 z kategorii 2*/
- SELECT *
- FROM Przedmioty
- WHERE (Cena between 900 and 1150) and Kategoria = 2
- /*9zaznacz przedmioty z przedziału cenowego 900 1150 z kategorii 2, postoruj wedle ceny rosnąco*/
- SELECT *
- FROM Przedmioty
- WHERE (Cena between 900 and 1150) and Kategoria = 2
- ORDER BY Cena DESC
- /*10zaznacz przedmioty których stan magazywnowy jest >=3 szt*/
- SELECT *
- FROM Przedmioty
- WHERE Ilosc_Magazynowa <= 3
- /*11Wyświetl przedmioty które po 20 % obniżce bedą mieć cenę ponizej 1500 zł */
- SELECT Nazwa,Cena,Cena*0.8 as 'cena po rabacie'
- FROM Przedmioty
- WHERE (Cena*0.8) < 1500
- /*12Wyświetl przedmioty które po 20 % obniżce bedą mieć cenę ponizej 1500 zł uporządkuj wedle ceny po rabacie malejąco*/
- SELECT Nazwa,Cena,Cena*0.8 as 'cena po rabacie'
- FROM Przedmioty
- WHERE (Cena*0.8) < 1500
- ORDER BY (cena*0.8) DESC
- /* 13 Zaznacz 3 najwyższe ceny produktów */
- SELECT Top (3) *
- FROM Przedmioty
- ORDER BY Cena DESC
- /*14Zaznacz pracowników z premią godzinową powyżej 8 zł i płacą powyżej 15 zł wyświetl łączną stawkę godzinową */
- SELECT Placa,Premia_Godzinowa, (Premia_Godzinowa + Placa) as 'całkowita stawka'
- FROM Umowy
- WHERE Premia_Godzinowa > 8 and Placa > 20
- /*15Zaznacz wszystkie uniklane miasta z danych faktur*/
- Select distinct(Miejscowosc)
- from Dane_Faktur
- /*16 Zaznacz losowy przedmiot */
- SELECT *
- FROM Przedmioty
- Where Id_Przedmiotu = (FLOOR(RAND()*(413+1)+5))
- /*17 zaznacz losowego użytkownika */
- SELECT Id_Uzytkownika FROM Uzytkownicy Where Id_Uzytkownika = (FLOOR(RAND()*(1000)+1005))
- SELECT Aktywna_Faktura FROM Uzytkownicy Where Id_Uzytkownika = (FLOOR(RAND()*(1000)+1005))
- /* 18 Zaznacz aktywne faktury uzytkowników */
- SELECT Id_Faktury, Uzytkownicy.email, Uzytkownicy.Id_Uzytkownika,Dane_Faktur.Id_Uzytkownika
- FROM Dane_Faktur
- INNER JOIN Uzytkownicy ON Dane_Faktur.Id_Faktury =Uzytkownicy.Aktywna_Faktura;
- SELECT *
- FROM Dane_Faktur
- /* 19 wyświetl iniciały osób fakturowanych */
- select Imie,Nazwisko,SUBSTRING(Imie,1,1) + SUBSTRING(Nazwisko,1,1) as 'Iniciały'
- FROM Dane_Faktur
- /*20 Zaznacz wszystkie zamówione przedmioty uzytkownika o emalu massa.Vestibulum@Aliquamnisl.ca*/
- select Przedmioty.Nazwa,Zamowienia_Przedmioty.Rabat,Przedmioty.Cena,(Przedmioty.Cena*Zamowienia_Przedmioty.Rabat)
- FROM Uzytkownicy
- Inner join Zamowienia On Uzytkownicy.Id_Uzytkownika = Zamowienia.Id_Uzytkownika
- Inner join Zamowienia_Przedmioty On Zamowienia.Id_Zamowienia = Zamowienia_Przedmioty.Id_Zamowienia
- Inner join Przedmioty On Przedmioty.Id_Przedmiotu =Zamowienia_Przedmioty.Id_Przedmiotu
- WHERE email like 'massa.Vestibulum@Aliquamnisl.ca'
- /*21 */
- /* Dodaj 3 z lewej z imienia 3 z prawej z nawiska + Id_Pracownika */
- select LEFT( Imie, 3)+RIGHT(RTRIM(Nazwisko), 3)+CAST(Id_Pracownika as varchar(20))
- From Pracownicy
- /*22 */
- select UPPER(LEFT( Imie, 3)+RIGHT(RTRIM(Nazwisko), 3)+CAST(Id_Pracownika as varchar(20)))
- From Pracownicy
- /*23 Policz msc od zawarcia umowy do jej wygasniecia*/
- select *
- FROM Umowy
- select Id_Umowy,DATEDIFF(MONTH,Data_Zawarcia, Data_Wygasniecia) as 'msc'
- FROM Umowy
- /*24 Policz dni od dolaczenia */
- select * from Uzytkownicy
- select email, DATEDIFF(MONTH,Data_Dolaczenia,GETDATE()) as 'z nami od'
- from Uzytkownicy
- /*25 zaznacz wszystkich użytkowników z domena .edu */
- select * from Uzytkownicy
- WHERE email like '%edu'
- /*26 zaznacz wszystkich użytkowników z poczatkiem emaila du */
- select * from Uzytkownicy
- WHERE email like 'du%'
- /*27 zaznacz wszystkich użytkowników z 2 lietra z przedziału G-K */
- select email, SUBSTRING(email,2,1) as 'druga litera'
- from Uzytkownicy
- WHERE SUBSTRING(email,2,1) like '[G-K]'
- /*28 to samo co 25, ale innym sposobem */
- select email, SUBSTRING(email,2,1) as 'druga litera'
- from Uzytkownicy
- WHERE email like '_[G-K]%'-- []-reprezentuje 1 znak więc szukamy COS|ZNAK MIEDZY G-K | OBOJETNIE ILE COSIÓW
- /* 29 wyświetla emaile zaczynające się na A,W lub P */
- select email
- from Uzytkownicy
- WHERE email like '[awp]%'
- Order By email
- /* 30 Wyświetla emaile które NIE zaczynają się na A,W lub P */
- select email
- from Uzytkownicy
- WHERE email not like '[awp]%'
- Order By email
- /*31 to samo co wyżej tylko inaczej zrobione*/
- select email
- from Uzytkownicy
- WHERE email like '[^awp]%'
- Order By email
- /*32 Wyświetla emaile bez @*/
- select email
- from Uzytkownicy
- WHERE email not like '%@%'
- Order By email
- /*33 Wyświetla Imona kończące się na e*/
- select Imie FROM Dane_Faktur
- WHERE Imie like '%e'
- /*34 zaznacz różnice w dołączeniu między użytkownikami poprzedzającymi */
- DECLARE @Data_Poprzednia DATE
- DECLARE @User INT
- SELECT @Data_Poprzednia = Data_Dolaczenia, @User = Id_Uzytkownika
- FROM Uzytkownicy
- WHERE Id_Uzytkownika = 1561
- SELECT @Data_Poprzednia AS 'DATA POPRZEDNIEGO', @User AS 'Id Poprzedniego', Data_dolaczenia, Id_Uzytkownika, DATEDIFF(DAY,@Data_Poprzednia,Data_dolaczenia) as 'Różnica czasu'
- FROM Uzytkownicy
- WHERE Id_Uzytkownika = (@User +1 )
- /* 35 Ile dni dzieli uzytkowników? (Id-1) podejscie z pentla Należy uruchmoć całość wartość jest absolutna z uwagi na losowe daty podczas generowania danych testowych */
- CREATE TABLE #Tymczasowa (
- Data_Poprzedniego DATE,
- Id_Poprzedniego INT
- );
- DECLARE @User DATE
- DECLARE @IdP INT
- DECLARE Uzytkownicy_Kursor2 CURSOR FOR SELECT Data_Dolaczenia,Id_Uzytkownika FROM Uzytkownicy;
- OPEN Uzytkownicy_Kursor2
- FETCH NEXT FROM Uzytkownicy_Kursor2 into @User,@IdP;
- PRINT @user
- WHILE @@FETCH_STATUS = 0
- BEGIN
- FETCH NEXT FROM Uzytkownicy_Kursor2 into @User,@IdP;
- Insert INTO #Tymczasowa (Data_Poprzedniego,Id_Poprzedniego) VALUES (@User, @IdP)
- END
- CLOSE Uzytkownicy_Kursor2
- DEALLOCATE Uzytkownicy_Kursor2
- Select #Tymczasowa.Data_Poprzedniego, Uzytkownicy.Data_Dolaczenia, ABS(DATEDIFF(MONTH,Data_Poprzedniego,Uzytkownicy.Data_Dolaczenia)) as 'Dzieli nas miesiecy'
- FROM #Tymczasowa
- inner join Uzytkownicy ON #Tymczasowa.Id_Poprzedniego = Uzytkownicy.Id_Uzytkownika+1
- WHERE #Tymczasowa.Data_Poprzedniego is not null and Uzytkownicy.Data_Dolaczenia is not null
- DROP TABLE #Tymczasowa
- /*aż dotąd! */
- /* 38 A tu dużo prostrze podejśće */
- CREATE TABLE #Tymczasowa (
- Data_Poprzedniego DATE,
- Id_Poprzedniego INT
- );
- INSERT INTO #Tymczasowa
- SELECT Data_Dolaczenia,Id_Uzytkownika FROM Uzytkownicy
- Select #Tymczasowa.Data_Poprzedniego, Uzytkownicy.Data_Dolaczenia, ABS(DATEDIFF(MONTH,Uzytkownicy.Data_Dolaczenia,Data_Poprzedniego)) as 'Dzieli nas miesiecy'
- FROM #Tymczasowa
- inner join Uzytkownicy ON #Tymczasowa.Id_Poprzedniego = Uzytkownicy.Id_Uzytkownika+1
- WHERE #Tymczasowa.Data_Poprzedniego is not null and Uzytkownicy.Data_Dolaczenia is not null
- DROP TABLE #Tymczasowa
- /*39 */
- SELECT Przedmioty.Id_Przedmiotu as 'Przedmioty', Zamowienia_Przedmioty.Id_Przedmiotu as 'zamowienia przedmioty'
- FROM Przedmioty
- LEFT JOIN Zamowienia_Przedmioty ON Przedmioty.Id_Przedmiotu = Zamowienia_Przedmioty.Id_Przedmiotu
- ORDER BY Przedmioty.Cena;
- /*40 */
- SELECT *
- FROM Przedmioty
- RIGHT JOIN Zamowienia_Przedmioty ON Przedmioty.Id_Przedmiotu = Zamowienia_Przedmioty.Id_Przedmiotu
- ORDER BY Przedmioty.Cena;
- /*41*/
- SELECT *
- FROM Przedmioty
- Inner JOIN Zamowienia_Przedmioty ON Przedmioty.Id_Przedmiotu = Zamowienia_Przedmioty.Id_Przedmiotu
- ORDER BY Przedmioty.Cena;
- /*42 No i wszystko na raz */
- SELECT *
- FROM Przedmioty
- FULL JOIN Zamowienia_Przedmioty ON Przedmioty.Id_Przedmiotu = Zamowienia_Przedmioty.Id_Przedmiotu
- FULL JOIN Zamowienia ON Zamowienia_Przedmioty.Id_Zamowienia = Zamowienia.Id_Zamowienia
- ORDER BY Przedmioty.Cena;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement