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 | - |