MOD yra eilutės funkcija SQL, kuri grąžina likutį iš pirmojo skaičiaus padalijimo į antrąjį skaičių.
MOD funkcijos sintaksė
SELECT MOD(Number1, Number2) AS Alias_Name;
MOD sintaksėje Skaičius1 yra dividendas, o skaičius2 – daliklis.
Struktūrinės užklausos kalboje taip pat galime naudoti funkciją MOD su lentelės stulpeliais, kaip parodyta šiame bloke:
SELECT MOD(Column_Name1, Column_Name2) AS Alias_Name FROM Table_Name;
Šioje sintaksėje turime apibrėžti tos lentelės, kurioje norime atlikti MOD funkciją, pavadinimą ir stulpelius.
MOD funkcijos pavyzdžiai
1 pavyzdys: Šiame pavyzdyje likusi dalis gaunama padalijus 101 iš 4:
SELECT MOD(101, 4) AS Division_of_101by4;
Išvestis:
101_4 padalijimas |
---|
1 |
2 pavyzdys: Šis pavyzdys padalija 101 iš 4 ir pateikia rezultato likutį:
SELECT MOD(2, 2) AS Division_of_2by2;
Išvestis:
Padalinys_of_2 by2 |
---|
0 |
3 pavyzdys: Šis pavyzdys padalija 8 iš 5 ir pateikia rezultato likutį:
SELECT MOD(8, 5) AS Division_of_8by5;
Išvestis:
Padalinys_of_8by5 |
---|
3 |
4 pavyzdys: Šis pavyzdys padalija 255 iš 200 ir grąžina likusią rezultato dalį:
SELECT MOD(255, 200) AS Division_of_255by200;
Išvestis:
255_200 padalijimas |
---|
55 |
5 pavyzdys: Šiame pavyzdyje naudojama MOD funkcija su SQL lentele.
Šiame pavyzdyje mes sukursime naują lentelę, per kurią atliksime MOD funkciją lentelės stulpeliuose:
Toliau parodyta sintaksė, skirta sukurti naują lentelę 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) );
Šis CREATE sakinys sukuria Produkto Aprašymas produktų kainos ir kiekio saugojimo lentelė:
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 );
Šios kelios INSERT užklausos įterpia produktų įrašus su jų pardavimo ir pirkimo kainomis į lentelę 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);
Toliau pateiktame SELECT sakinyje rodomi įterpti anksčiau pateiktų įrašai Produkto Aprašymas lentelė:
SELECT * FROM Product_Details;
Produkto_ID | Produkto pavadinimas | Produkto_kiekis | Pirkimo_kaina | Pardavimo kaina | Išleidimo data | Produkto_įvertinimas |
---|---|---|---|---|---|---|
104 | P1 | 10 | 945 | NULL | 2022-04-30 | NULL |
202 | P4 | penkiolika | Keturi | 75 | 2022-01-28 | 5 |
103 | P2 | 18 | 25 | NULL | 2022-02-18 | 4 |
111 | P7 | 25 | 5 | penkiolika | 2021-12-25 | 9 |
210 | P6 | penkiolika | penkiasdešimt | 70 | 2021-10-15 | NULL |
212 | P8 | 19 | 110 | 250 | 2022-01-28 | 4 |
112 | P10 | 10 | 550 | 835 | 2022-04-11 | NULL |
1 užklausa: Šioje SELECT užklausoje naudojama MOD funkcija su aukščiau pateiktos Product_Details lentelės stulpeliu Product_Quantity:
SELECT Product_ID, MOD(Product_ID, 100) AS Division_of_ProductID_by100 FROM Product_Details;
Ši užklausa padalija kiekvieną produkto_id iš 100 ir grąžina likusią dalį po padalijimo.
Išvestis:
Produkto_ID | Produkto_ID_dalijimas pagal 100 |
---|---|
104 | 4 |
202 | 2 |
103 | 3 |
111 | vienuolika |
210 | 10 |
212 | 12 |
112 | 12 |
2 užklausa: Šioje SELECT užklausoje naudojama MOD funkcija su aukščiau pateiktos Product_Details lentelės stulpeliais Purchasing_Price ir Selling_Price:
123 filmas
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;
Ši užklausa padalija kiekvienos prekės pirkimo ir pardavimo kainą pagal prekės kiekį ir grąžina likusią dalį.
Išvestis:
Pirkimo_kaina | Produkto_kiekis | Pirkimo_kainos padalijimas | Pardavimo kaina | Produkto_kiekis | Pardavimo kainos padalijimas |
---|---|---|---|---|---|
945 | 10 | 5 | NULL | 10 | - |
Keturi | penkiolika | 0 | 75 | penkiolika | 0 |
25 | 18 | 7 | NULL | 18 | - |
5 | 25 | 5 | penkiolika | 25 | penkiolika |
penkiasdešimt | penkiolika | 5 | 70 | penkiolika | 10 |
110 | 19 | penkiolika | 250 | 19 | 3 |
550 | 10 | 0 | 835 | 10 | 5 |
3 užklausa: Šioje SELECT užklausoje naudojama MOD funkcija su aukščiau pateiktos Product_Details lentelės stulpeliu Product_Rating:
SELECT MOD(Product_Rating, 2) AS Division_ofratingby2 FROM Product_Details;
Ši užklausa padalija kiekvieną produkto įvertinimą iš 2 ir grąžina likusią dalį po padalijimo.
Išvestis:
Produkto_įvertinimas | Padalijimas pagal 2 |
---|---|
NULL | - |
5 | 1 |
4 | 0 |
9 | 1 |
NULL | - |
4 | 0 |
NULL | - |