MOD je řetězcová funkce v SQL, která vrací zbytek z dělení prvního čísla druhým číslem.
Syntaxe funkce MOD
SELECT MOD(Number1, Number2) AS Alias_Name;
V syntaxi MOD je číslo1 dělenec a číslo2 je dělitel.
Ve Structured Query Language můžeme také použít funkci MOD se sloupci tabulky, jak je znázorněno v následujícím bloku:
SELECT MOD(Column_Name1, Column_Name2) AS Alias_Name FROM Table_Name;
V této syntaxi musíme definovat název a sloupce té tabulky, na které chceme funkci MOD provést.
gigabajt vs megabajt
Příklady funkcí MOD
Příklad 1: Tento příklad získá zbytek vydělením 101 4:
SELECT MOD(101, 4) AS Division_of_101by4;
Výstup:
Division_of_101by4 |
---|
1 |
Příklad 2: Tento příklad vydělí 101 4 a vrátí zbytek jako výsledek:
SELECT MOD(2, 2) AS Division_of_2by2;
Výstup:
Dělení_2 na 2 |
---|
0 |
Příklad 3: Tento příklad vydělí 8 5 a vrátí zbytek ve výsledku:
SELECT MOD(8, 5) AS Division_of_8by5;
Výstup:
Dělení_8by5 |
---|
3 |
Příklad 4: Tento příklad vydělí 255 200 a vrátí zbytek jako výsledek:
SELECT MOD(255, 200) AS Division_of_255by200;
Výstup:
Dělení_255 na 200 |
---|
55 |
Příklad 5: Tento příklad používá funkci MOD s tabulkou SQL.
V tomto příkladu vytvoříme novou tabulku, jejímž prostřednictvím budeme provádět funkci MOD na sloupcích tabulky:
Následující text ukazuje syntaxi pro vytvoření nové tabulky v SQL:
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) );
Následující příkaz CREATE vytvoří Detaily produktu tabulka pro uložení ceny a množství produktů:
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 );
Následující vícenásobné INSERT dotazy vloží záznamy produktů s jejich prodejní a nákupní cenou do tabulky 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);
Následující příkaz SELECT zobrazí vložené záznamy výše Detaily produktu stůl:
SELECT * FROM Product_Details;
Product_ID | Jméno výrobku | Množství_produktu | Nákupní_cena | Prodejní cena | Datum vydání | Hodnocení_produktu |
---|---|---|---|---|---|---|
104 | P1 | 10 | 945 | NULA | 2022-04-30 | NULA |
202 | P4 | patnáct | Čtyři pět | 75 | 2022-01-28 | 5 |
103 | P2 | 18 | 25 | NULA | 2022-02-18 | 4 |
111 | P7 | 25 | 5 | patnáct | 2021-12-25 | 9 |
210 | P6 | patnáct | padesáti | 70 | 2021-10-15 | NULA |
212 | P8 | 19 | 110 | 250 | 2022-01-28 | 4 |
112 | P10 | 10 | 550 | 835 | 2022-04-11 | NULA |
Dotaz 1: Následující dotaz SELECT používá funkci MOD se sloupcem Product_Quantity výše uvedené tabulky Product_Details:
SELECT Product_ID, MOD(Product_ID, 100) AS Division_of_ProductID_by100 FROM Product_Details;
Tento dotaz vydělí každé product_id 100 a vrátí zbytek po dělení.
Výstup:
Product_ID | Division_of_ProductID_by100 |
---|---|
104 | 4 |
202 | 2 |
103 | 3 |
111 | jedenáct |
210 | 10 |
212 | 12 |
112 | 12 |
Dotaz 2: Následující dotaz SELECT používá funkci MOD se sloupci a Nákupní_cena a Prodejní_cena ve výše uvedené tabulce 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;
Tento dotaz rozdělí nákupní cenu a prodejní cenu každého produktu množstvím produktu a vrátí zbytek.
Výstup:
Nákupní_cena | Množství_produktu | Division_ofpurhcaseprice | Prodejní cena | Množství_produktu | Rozdělení_prodejní ceny |
---|---|---|---|---|---|
945 | 10 | 5 | NULA | 10 | - |
Čtyři pět | patnáct | 0 | 75 | patnáct | 0 |
25 | 18 | 7 | NULA | 18 | - |
5 | 25 | 5 | patnáct | 25 | patnáct |
padesáti | patnáct | 5 | 70 | patnáct | 10 |
110 | 19 | patnáct | 250 | 19 | 3 |
550 | 10 | 0 | 835 | 10 | 5 |
Dotaz 3: Následující dotaz SELECT používá funkci MOD se sloupcem Product_Rating ve výše uvedené tabulce Product_Details:
SELECT MOD(Product_Rating, 2) AS Division_ofratingby2 FROM Product_Details;
Tento dotaz vydělí každé hodnocení produktu 2 a vrátí zbytek po dělení.
Výstup:
Hodnocení_produktu | Division_ofatingby2 |
---|---|
NULA | - |
5 | 1 |
4 | 0 |
9 | 1 |
NULA | - |
4 | 0 |
NULA | - |