जवाबों:
इसका उपयोग मोडुलो ऑपरेटर के रूप में किया जा रहा है; दूसरे द्वारा विभाजित संख्या के शेष को वापस करना।
आपके उदाहरण में, WHERE क्लॉज़ केवल उन परिणामों को सीमित कर रहा है, जहाँ Col1 मान 3 से विभाजित होता है, शेष 1. (जैसे 4,7,10, आदि)।
यह मोडुलो ऑपरेटर है ।
शेष एक संख्या को दूसरे द्वारा विभाजित करके लौटाता है।
SQL में% का उपयोग दो अलग-अलग स्वरूपों में किया जा सकता है। यदि यह एक स्ट्रिंग में उपयोग किया जाता है LIKE
तो यह एक वाइल्ड कार्ड है, उदाहरण के लिए:
WHERE col_name like '%test%'
इसका मतलब होगा कि इसमें वह सब कुछ मिलेगा, col_name
जिसमें "परीक्षण" शब्द है।
लेकिन इस विशिष्ट ऑपरेशन में% प्रतीक का उपयोग मोडुलो ऑपरेटर के रूप में किया जा रहा है। मोडुलो (आमतौर पर MODबटन के रूप में दिखाया गया कैलकुलेटर पर ) शेष बचता है। यह एक उपयोगी उपकरण हो सकता है यदि डेटा प्रदर्शित करने के लिए लूप का उपयोग किया जाता है और आप कॉलम गिनना चाहते हैं - मैंने हाल ही में एक वेब पेज को ड्रा करते समय मोडुलो ऑपरेटर का उपयोग किया है। मेरा PHP में था, लेकिन यह एक उदाहरण है:
$count = 0 ;
$records = array () ;
for ( $a = 0 ; $a < 100 ; $a++ )
$records[$a] = $a ;
foreach ( $records as $record )
{
if ( $count % 3 == 0 )
echo '<p>Three items</p>' ;
if ( $count % 10 == 0 )
echo '<p>Ten items</p>' ;
echo '<p>'.$record.'</p>' ;
$count++ ;
}
यह मूल रूप से 1 - 100 और हर तीन वस्तुओं को "तीन आइटम" आउटपुट करेगा, और यह हर दस आइटम "दस आइटम" का उत्पादन करेगा क्योंकि कोई भी अन्य संख्या मान लौटाएगी जैसे:
5 / 10 = 0.5 (5 % 10 = 5)
2 / 3 = 0.666... (2 % 3 = 2)
50 / 10 = 5.0 (50 % 10 = 0)
9 / 3 = 3.0 (9 % 3 = 0)
select 5 / 10 ;
देंगे 0
, नहीं0.5
अन्य उत्तर सही हैं। यह मॉडुलो ऑपरेटर है, जो शेष भाग को लौटाता है।
लेकिन मुझे लगता है कि यह जोड़ने में मददगार हो सकता है कि यह एक प्रासंगिक ऑपरेशन क्यों है और यह कभी-कभी उपयोगी क्यों हो सकता है।
X % 2
क्योंकि यह लौटाता है यदि संख्या सम या विषम है सबसे अधिक इस्तेमाल किया जाता है।
कल्पना करें कि आप सभी स्तंभों को सम संख्याओं के साथ चुनना चाहते हैं, आप कर सकते हैं:
SELECT * FROM table WHERE column % 2 = 0
यदि आप विषम संख्या वाले सभी स्तंभों का चयन करना चाहते हैं, तो आप कर सकते हैं:
SELECT * FROM table WHERE column % 2 = 1
अन्य उपयोग के मामले उत्पन्न हो सकते हैं, उदाहरण के लिए, आप उनकी इकाई द्वारा सभी स्तंभों को फ़िल्टर करना चाहते हैं, आप इसका उपयोग उन सभी संख्याओं को प्राप्त करने के लिए कर सकते हैं, जिनकी इकाइयों में शून्य है:
SELECT * FROM table WHERE column % 10 = 0