Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

मैं एक MySQL संग्रहीत फ़ंक्शन कैसे लिख सकता हूं जो किसी दिए गए नंबर के फैक्टोरियल की गणना करता है?


निम्नलिखित एक संग्रहीत फ़ंक्शन का उदाहरण है जो किसी दिए गए नंबर के फ़ैक्टोरियल की गणना कर सकता है -

CREATE FUNCTION factorial (n DECIMAL(3,0))
RETURNS DECIMAL(20,0)
DETERMINISTIC
BEGIN
DECLARE factorial DECIMAL(20,0) DEFAULT 1;
DECLARE counter DECIMAL(3,0);
SET counter = n;
factorial_loop: REPEAT
SET factorial = factorial * counter;
SET counter = counter - 1;
UNTIL counter = 1
END REPEAT;
RETURN factorial;
END //

mysql> Select Factorial(5)//
+--------------+
| Factorial(5) |
+--------------+
|          120 |
+--------------+
1 row in set (0.27 sec)

mysql> Select Factorial(6)//
+--------------+
| Factorial(6) |
+--------------+
|          720 |
+--------------+
1 row in set (0.00 sec)

  1. हम डेटाबेस क्वेरी में MySQL संग्रहीत फ़ंक्शन का उपयोग कैसे कर सकते हैं?

    इसे उस उदाहरण का अनुसरण करके समझा जा सकता है जिसमें हमने लाभ की गणना करने के लिए एक फ़ंक्शन लाभ बनाया है और उस फ़ंक्शन का उपयोग करके तालिका item_list के डेटा पर लागू किया है। इसे डेटाबेस क्वेरी में। उदाहरण आइटम_सूची से * चुनें;+-----------+-------+------- +| Item_name | कीमत | लागत |+-----------+--

  1. हम डेटाबेस से एक MySQL संग्रहीत फ़ंक्शन को कैसे हटा सकते हैं?

    यदि हमारे पास ALTER ROUTINE विशेषाधिकार हैं तो DROP FUNCTION स्टेटमेंट की मदद से, हम एक MySQL संग्रहीत फ़ंक्शन को हटा सकते हैं। इसका सिंटैक्स इस प्रकार हो सकता है - सिंटैक्स DROP FUNCTION [IF EXISTS] function_name यहाँ function_name उस फंक्शन का नाम है जिसे हम अपने डेटाबेस से हटाना चाहते हैं। उदाहर

  1. मैं MySQL में दिनों की संख्या कैसे गिन सकता हूं?

    आइए पहले एक तालिका बनाएं जिसमें एक कॉलम डेटाटाइम के रूप में हो और दूसरा जिसमें दिन संग्रहीत हों: टेबल बनाएं डेमोटेबल (शिपिंगडेट डेटटाइम, काउंटऑफडेट इंट);क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.52 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालने के लिए क्वेरी निम्नलिखित है: डेमोटेबल मानों