logo

MOD-Funktion in SQL

Die MOD ist eine String-Funktion in SQL, die den Rest der Division der ersten Zahl durch die zweite Zahl zurückgibt.

Syntax der MOD-Funktion

SELECT MOD(Number1, Number2) AS Alias_Name;

In der MOD-Syntax ist Zahl1 der Dividend und Zahl2 der Divisor.

In der strukturierten Abfragesprache können wir die MOD-Funktion auch mit den Spalten der Tabelle verwenden, wie im folgenden Block gezeigt:

SELECT MOD(Column_Name1, Column_Name2) AS Alias_Name FROM Table_Name;

In dieser Syntax müssen wir den Namen und die Spalten der Tabelle definieren, für die wir die MOD-Funktion ausführen möchten.

Beispiele für die MOD-Funktion

Beispiel 1: In diesem Beispiel erhält man den Rest durch Division von 101 durch 4:

der die Schule erfunden hat
SELECT MOD(101, 4) AS Division_of_101by4;

Ausgabe:

Vergleiche in String
Division_of_101by4
1

Beispiel 2: Dieses Beispiel dividiert 101 durch 4 und gibt den Rest als Ergebnis zurück:

SELECT MOD(2, 2) AS Division_of_2by2;

Ausgabe:

Division_of_2by2
0

Beispiel 3: Dieses Beispiel dividiert 8 durch 5 und gibt den Rest als Ergebnis zurück:

SELECT MOD(8, 5) AS Division_of_8by5;

Ausgabe:

Division_of_8by5
3

Beispiel 4: Dieses Beispiel dividiert 255 durch 200 und gibt den Rest als Ergebnis zurück:

SELECT MOD(255, 200) AS Division_of_255by200;

Ausgabe:

Division_of_255by200
55

Beispiel 5: In diesem Beispiel wird die MOD-Funktion mit der SQL-Tabelle verwendet.

In diesem Beispiel erstellen wir die neue Tabelle, über die wir die MOD-Funktion für die Spalten der Tabelle ausführen:

Offsethöhe

Im Folgenden wird die Syntax zum Erstellen der neuen Tabelle in SQL gezeigt:

 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) ); 

Die folgende CREATE-Anweisung erstellt die Produktdetails Tabelle zum Speichern von Preis und Menge der Produkte:

 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 ); 

Die folgenden mehrfachen INSERT-Abfragen fügen die Datensätze von Produkten mit ihren Verkaufs- und Einkaufspreisen in die Tabelle Product_Details ein:

 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); 

Die folgende SELECT-Anweisung zeigt die oben eingefügten Datensätze an Produktdetails Tisch:

 SELECT * FROM Product_Details; 

Produkt ID Produktname Produktmenge Kaufpreis Verkaufspreis Veröffentlichungsdatum Produktbewertung
104 P1 10 945 NULL 30.04.2022 NULL
202 P4 fünfzehn Vier fünf 75 28.01.2022 5
103 P2 18 25 NULL 18.02.2022 4
111 P7 25 5 fünfzehn 25.12.2021 9
210 P6 fünfzehn fünfzig 70 15.10.2021 NULL
212 P8 19 110 250 28.01.2022 4
112 P10 10 550 835 11.04.2022 NULL

Abfrage 1: Die folgende SELECT-Abfrage verwendet die MOD-Funktion mit der Spalte Product_Quantity der obigen Tabelle Product_Details:

SELECT Product_ID, MOD(Product_ID, 100) AS Division_of_ProductID_by100 FROM Product_Details;

Diese Abfrage dividiert jede Produkt-ID durch 100 und gibt den Rest nach der Division zurück.

Filme123 bis

Ausgabe:

Produkt ID Division_of_ProductID_by100
104 4
202 2
103 3
111 elf
210 10
212 12
112 12

Abfrage 2: Die folgende SELECT-Abfrage verwendet die MOD-Funktion mit den Spalten Purchasing_Price und Selling_Price der obigen Tabelle 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;

Diese Abfrage dividiert den Einkaufs- und Verkaufspreis jedes Produkts durch die Produktmenge und gibt den Rest zurück.

Ausgabe:

Kaufpreis Produktmenge Division_ofpurhcaseprice Verkaufspreis Produktmenge Division_ofsellingprice
945 10 5 NULL 10 -
Vier fünf fünfzehn 0 75 fünfzehn 0
25 18 7 NULL 18 -
5 25 5 fünfzehn 25 fünfzehn
fünfzig fünfzehn 5 70 fünfzehn 10
110 19 fünfzehn 250 19 3
550 10 0 835 10 5

Abfrage 3: Die folgende SELECT-Abfrage verwendet die MOD-Funktion mit der Spalte „Product_Rating“ der obigen Tabelle „Product_Details“:

Äquivalenzgesetze
SELECT MOD(Product_Rating, 2) AS Division_ofratingby2 FROM Product_Details;

Diese Abfrage dividiert jede Produktbewertung durch 2 und gibt den Rest nach der Division zurück.

Ausgabe:

Produktbewertung Division_ofratingby2
NULL -
5 1
4 0
9 1
NULL -
4 0
NULL -