logo

MOD funkcija u SQL-u

MOD je funkcija niza u SQL-u koja vraća ostatak od dijeljenja prvog broja drugim brojem.

Sintaksa MOD funkcije

SELECT MOD(Number1, Number2) AS Alias_Name;

U MOD sintaksi, broj1 je djelitelj, a broj2 je djelitelj.

U jeziku strukturiranih upita također možemo koristiti funkciju MOD sa stupcima tablice kao što je prikazano u sljedećem bloku:

SELECT MOD(Column_Name1, Column_Name2) AS Alias_Name FROM Table_Name;

U ovoj sintaksi moramo definirati naziv i stupce te tablice na kojoj želimo izvršiti MOD funkciju.

java int u niz

Primjeri MOD funkcije

Primjer 1: Ovaj primjer dobiva ostatak dijeljenjem 101 s 4:

SELECT MOD(101, 4) AS Division_of_101by4;

Izlaz:

Podjela_od_101 na 4
1

Primjer 2: Ovaj primjer dijeli 101 s 4 i vraća ostatak kao rezultat:

SELECT MOD(2, 2) AS Division_of_2by2;

Izlaz:

Podjela_od_2 sa 2
0

Primjer 3: Ovaj primjer dijeli 8 sa 5 i vraća ostatak kao rezultat:

SELECT MOD(8, 5) AS Division_of_8by5;

Izlaz:

Podjela_od_8 sa 5
3

Primjer 4: Ovaj primjer dijeli 255 sa 200 i vraća ostatak kao rezultat:

SELECT MOD(255, 200) AS Division_of_255by200;

Izlaz:

Podjela_od_255 na 200
55

Primjer 5: Ovaj primjer koristi funkciju MOD sa SQL tablicom.

U ovom primjeru izradit ćemo novu tablicu kroz koju ćemo izvršiti MOD funkciju na stupcima tablice:

Sljedeće prikazuje sintaksu za stvaranje nove tablice u SQL-u:

 CREATE TABLE Name_of_New_Table ( First_Column_of_table Data Type (character_size of First Column), Second_Column_of_table Data Type (character_size of the Second column ), Third_Column_of_table Data Type (character_size of the Third column), ......., Last_Column_of_table Data Type (character_size of the Last column) ); 

Sljedeća naredba CREATE stvara Detalji o proizvodu tablica za spremanje cijene i količine proizvoda:

 CREATE TABLE Product_Details ( Product_ID INT NOT NULL, Product_Name Varchar(50), Product_Quantity INT, Purchasing_Price INT, Selling_Price INT, Release_Date Date, Product_Rating INT ); 

Sljedeći višestruki INSERT upiti umeću zapise proizvoda s njihovom prodajnom i nabavnom cijenom u tablicu Product_Details:

modem vs router
 INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (104, P1, 10, 945, NULL, 2022-04-30, NULL); INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (202, P4, 15, 45, 75, 2022-01-28, 5); INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (103, P2, 18, 25, NULL, 2022-02-18, 4); INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (111, P7, 25, 5, 15, 2021-12-25, 9); INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (210, P6, 15, 50, 70, 2021-10-15, NULL); INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (212, P8, 19, 110, 250, 2022-01-28, 4); INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (112, P10, 10, 550, 835, 2022-04-11, NULL); 

Sljedeća izjava SELECT prikazuje umetnute zapise od gore navedenog Detalji o proizvodu stol:

 SELECT * FROM Product_Details; 

Identifikacijski broj proizvoda Ime proizvoda Količina_proizvoda Nabavna_cijena Prodajna cijena Datum izlaska Ocjena_proizvoda
104 P1 10 945 NULL 2022-04-30 NULL
202 P4 petnaest Četiri pet 75 2022-01-28 5
103 P2 18 25 NULL 2022-02-18 4
111 P7 25 5 petnaest 2021-12-25 9
210 P6 petnaest pedeset 70 2021-10-15 NULL
212 P8 19 110 250 2022-01-28 4
112 P10 10 550 835 2022-04-11 NULL

Upit 1: Sljedeći SELECT upit koristi funkciju MOD sa stupcem Product_Quantity gornje tablice Product_Details:

SELECT Product_ID, MOD(Product_ID, 100) AS Division_of_ProductID_by100 FROM Product_Details;

Ovaj upit dijeli svaki product_id sa 100 i vraća ostatak nakon dijeljenja.

Izlaz:

Identifikacijski broj proizvoda Division_of_ProductID_by100
104 4
202 2
103 3
111 jedanaest
210 10
212 12
112 12

Upit 2: Sljedeći SELECT upit koristi funkciju MOD sa stupcima Purchasing_Price i Selling_Price gornje tablice Product_Details:

SELECT Purchasing_Price, Product_Quantity, MOD(Purchasing_Price, Product_Quantity) AS Division_ofpurhcaseprice, Selling_Price, Product_Quantity, MOD(Selling_Price) AS Division_of_SellingPrice FROM Product_Details;

Ovaj upit dijeli nabavnu i prodajnu cijenu svakog proizvoda prema količini proizvoda i vraća ostatak.

Izlaz:

Nabavna_cijena Količina_proizvoda Division_ofpurhcaseprice Prodajna cijena Količina_proizvoda Podjela_prodajne cijene
945 10 5 NULL 10 -
Četiri pet petnaest 0 75 petnaest 0
25 18 7 NULL 18 -
5 25 5 petnaest 25 petnaest
pedeset petnaest 5 70 petnaest 10
110 19 petnaest 250 19 3
550 10 0 835 10 5

Upit 3: Sljedeći SELECT upit koristi funkciju MOD sa stupcem Product_Rating gornje tablice Product_Details:

SELECT MOD(Product_Rating, 2) AS Division_ofratingby2 FROM Product_Details;

Ovaj upit dijeli svaku ocjenu proizvoda s 2 i vraća ostatak nakon dijeljenja.

Izlaz:

Ocjena_proizvoda Division_ofratingby2
NULL -
5 1
4 0
9 1
NULL -
4 0
NULL -