logo

Funkce MOD v SQL

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 -