logo

SQL'de MOD İşlevi

MOD, SQL'de birinci sayının ikinci sayıya bölümünden kalanı döndüren bir dize işlevidir.

MOD İşlevinin Sözdizimi

SELECT MOD(Number1, Number2) AS Alias_Name;

MOD sözdiziminde Sayı1 bölen, Sayı2 ise bölendir.

Yapılandırılmış Sorgu Dili'nde MOD fonksiyonunu aşağıdaki blokta gösterildiği gibi tablonun sütunlarıyla da kullanabiliriz:

int java'ya dize
SELECT MOD(Column_Name1, Column_Name2) AS Alias_Name FROM Table_Name;

Bu sözdiziminde MOD fonksiyonunu gerçekleştirmek istediğimiz tablonun adını ve sütunlarını tanımlamamız gerekiyor.

MOD işlevi örnekleri

Örnek 1: Bu örnekte kalanı 101'i 4'e bölerek elde ediyoruz:

SELECT MOD(101, 4) AS Division_of_101by4;

Çıktı:

Division_of_101by4
1

Örnek 2: Bu örnek, 101'i 4'e böler ve kalanı sonuç olarak döndürür:

SELECT MOD(2, 2) AS Division_of_2by2;

Çıktı:

Division_of_2by2
0

Örnek 3: Bu örnek, 8'i 5'e böler ve kalanı sonuç olarak döndürür:

SELECT MOD(8, 5) AS Division_of_8by5;

Çıktı:

Division_of_8by5
3

Örnek 4: Bu örnek, 255'i 200'e böler ve kalanı sonuç olarak döndürür:

SELECT MOD(255, 200) AS Division_of_255by200;

Çıktı:

tarihe dize
Division_of_255by200
55

Örnek 5: Bu örnekte SQL tablosuyla MOD işlevi kullanılmaktadır.

Bu örnekte tablonun sütunları üzerinde MOD fonksiyonunu gerçekleştireceğimiz yeni tabloyu oluşturacağız:

Aşağıda SQL'de yeni tabloyu oluşturmaya yönelik söz dizimi gösterilmektedir:

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

Aşağıdaki CREATE ifadesi şunu oluşturur: Ürün Detayları Ürünlerin fiyatını ve miktarını saklamak için tablo:

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

Aşağıdaki çoklu INSERT sorguları, ürünlerin kayıtlarını satış ve satın alma fiyatlarıyla birlikte Product_Details tablosuna ekler:

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

Aşağıdaki SELECT ifadesi yukarıdakilerin eklenen kayıtlarını görüntüler Ürün Detayları masa:

 SELECT * FROM Product_Details; 

Ürün kimliği Ürün adı Ürün miktarı Satın alma bedeli Satış fiyatı Yayın tarihi Ürün_Derecelendirmesi
104 P1 10 945 HÜKÜMSÜZ 2022-04-30 HÜKÜMSÜZ
202 P4 on beş Dört beş 75 2022-01-28 5
103 P2 18 25 HÜKÜMSÜZ 2022-02-18 4
111 P7 25 5 on beş 2021-12-25 9
210 P6 on beş elli 70 2021-10-15 HÜKÜMSÜZ
212 S8 19 110 250 2022-01-28 4
112 P10 10 550 835 2022-04-11 HÜKÜMSÜZ

Sorgu 1: Aşağıdaki SELECT sorgusu, yukarıdaki Product_Details tablosunun Product_Quantity sütunuyla birlikte MOD işlevini kullanır:

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

Bu sorgu, her ürün_id'sini 100'e böler ve bölme işleminden sonra kalanı döndürür.

Çıktı:

fabrika yöntemi tasarım deseni
Ürün kimliği Division_of_ProductID_by100
104 4
202 2
103 3
111 on bir
210 10
212 12
112 12

Sorgu 2: Aşağıdaki SELECT sorgusu, yukarıdaki Product_Details tablosunun Purchasing_Price ve Selling_Price sütunlarıyla MOD işlevini kullanır:

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;

Bu sorgu her ürünün alış ve satış fiyatını ürün adedine göre bölerek kalanı döndürür.

Çıktı:

Satın alma bedeli Ürün miktarı Division_ofpurhcaseprice Satış fiyatı Ürün miktarı Division_ofsellingprice
945 10 5 HÜKÜMSÜZ 10 -
Dört beş on beş 0 75 on beş 0
25 18 7 HÜKÜMSÜZ 18 -
5 25 5 on beş 25 on beş
elli on beş 5 70 on beş 10
110 19 on beş 250 19 3
550 10 0 835 10 5

Sorgu 3: Aşağıdaki SELECT sorgusu, yukarıdaki Product_Details tablosunun Product_Rating sütunuyla birlikte MOD işlevini kullanır:

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

Bu sorgu, her ürün derecelendirmesini 2'ye böler ve bölme işleminden sonra kalanı döndürür.

Çıktı:

Ürün_Derecelendirmesi Division_ofratingby2
HÜKÜMSÜZ -
5 1
4 0
9 1
HÜKÜMSÜZ -
4 0
HÜKÜMSÜZ -