logo

MOD funkcija SQL

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 -