MOD je funkcija niza v SQL, ki vrne ostanek deljenja prvega števila z drugim številom.
Sintaksa funkcije MOD
SELECT MOD(Number1, Number2) AS Alias_Name;
V sintaksi MOD je število1 dividenda, število2 pa delitelj.
V jeziku strukturiranih poizvedb lahko uporabimo tudi funkcijo MOD s stolpci tabele, kot je prikazano v naslednjem bloku:
linux preimenuj mapo
SELECT MOD(Column_Name1, Column_Name2) AS Alias_Name FROM Table_Name;
V tej sintaksi moramo definirati ime in stolpce te tabele, na kateri želimo izvesti funkcijo MOD.
Primeri funkcije MOD
Primer 1: Ta primer dobi ostanek tako, da 101 deli s 4:
SELECT MOD(101, 4) AS Division_of_101by4;
Izhod:
Delitev_od_101 na 4 |
---|
1 |
Primer 2: Ta primer deli 101 s 4 in vrne preostanek kot rezultat:
SELECT MOD(2, 2) AS Division_of_2by2;
Izhod:
Delitev_od_2 na 2 |
---|
0 |
Primer 3: Ta primer deli 8 s 5 in vrne preostanek kot rezultat:
SELECT MOD(8, 5) AS Division_of_8by5;
Izhod:
Delitev_od_8 na 5 |
---|
3 |
Primer 4: Ta primer deli 255 z 200 in vrne preostanek kot rezultat:
SELECT MOD(255, 200) AS Division_of_255by200;
Izhod:
Delitev_od_255 na 200 |
---|
55 |
Primer 5: Ta primer uporablja funkcijo MOD s tabelo SQL.
V tem primeru bomo ustvarili novo tabelo, prek katere bomo izvedli funkcijo MOD na stolpcih tabele:
Naslednje prikazuje sintakso za ustvarjanje nove tabele v SQL:
c polje nizov
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) );
Naslednji stavek CREATE ustvari Podrobnosti produkta tabela za shranjevanje cene in količine izdelkov:
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 );
Naslednje več poizvedb INSERT vstavi zapise izdelkov z njihovo prodajno in nabavno ceno v tabelo Product_Details:
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);
Naslednji stavek SELECT prikaže vstavljene zapise zgoraj navedenega Podrobnosti produkta tabela:
SELECT * FROM Product_Details;
Product_ID | Ime izdelka | Količina_izdelka | Nabavna_cena | Prodajna cena | Datum izdaje | Ocena_izdelka |
---|---|---|---|---|---|---|
104 | P1 | 10 | 945 | NIČ | 2022-04-30 | NIČ |
202 | P4 | petnajst | Štiri | 75 | 2022-01-28 | 5 |
103 | P2 | 18 | 25 | NIČ | 2022-02-18 | 4 |
111 | P7 | 25 | 5 | petnajst | 2021-12-25 | 9 |
210 | P6 | petnajst | petdeset | 70 | 2021-10-15 | NIČ |
212 | V8 | 19 | 110 | 250 | 2022-01-28 | 4 |
112 | P10 | 10 | 550 | 835 | 2022-04-11 | NIČ |
Poizvedba 1: Naslednja poizvedba SELECT uporablja funkcijo MOD s stolpcem Product_Quantity zgornje tabele Product_Details:
SELECT Product_ID, MOD(Product_ID, 100) AS Division_of_ProductID_by100 FROM Product_Details;
Ta poizvedba deli vsak product_id s 100 in vrne preostanek po deljenju.
Izhod:
Product_ID | Delitev_ID_izdelka_na100 |
---|---|
104 | 4 |
202 | 2 |
103 | 3 |
111 | enajst |
210 | 10 |
212 | 12 |
112 | 12 |
Poizvedba 2: Naslednja poizvedba SELECT uporablja funkcijo MOD s stolpcema Purchasing_Price in Selling_Price zgornje tabele 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;
Ta poizvedba razdeli nabavno in prodajno ceno vsakega izdelka glede na količino izdelka in vrne preostanek.
Izhod:
Nabavna_cena | Količina_izdelka | Division_ofpurhcaseprice | Prodajna cena | Količina_izdelka | Delitev_prodajne cene |
---|---|---|---|---|---|
945 | 10 | 5 | NIČ | 10 | - |
Štiri | petnajst | 0 | 75 | petnajst | 0 |
25 | 18 | 7 | NIČ | 18 | - |
5 | 25 | 5 | petnajst | 25 | petnajst |
petdeset | petnajst | 5 | 70 | petnajst | 10 |
110 | 19 | petnajst | 250 | 19 | 3 |
550 | 10 | 0 | 835 | 10 | 5 |
Poizvedba 3: Naslednja poizvedba SELECT uporablja funkcijo MOD s stolpcem Product_Rating zgornje tabele Product_Details:
SELECT MOD(Product_Rating, 2) AS Division_ofratingby2 FROM Product_Details;
Ta poizvedba deli vsako oceno izdelka z 2 in vrne preostanek po deljenju.
Izhod:
Ocena_izdelka | Division_ofratingby2 |
---|---|
NIČ | - |
5 | 1 |
4 | 0 |
9 | 1 |
NIČ | - |
4 | 0 |
NIČ | - |