"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > मैं SQL में स्ट्रिंग्स से संख्यात्मक मान कैसे निकाल सकता हूं?

मैं SQL में स्ट्रिंग्स से संख्यात्मक मान कैसे निकाल सकता हूं?

2025-02-04 को प्रकाशित
ब्राउज़ करें:122

How Can I Extract Numeric Values from Strings in SQL?

स्ट्रिंग से संख्यात्मक डेटा निकालें

डेटाबेस वातावरण में, एम्बेडेड संख्यात्मक डेटा को स्ट्रिंग से निकालने की आवश्यकता हो सकती है। निम्नलिखित उदाहरण पर विचार करें: ] स्ट्रिंग 2: समन्वय 005 स्ट्रिंग 3: BALING1000SHEET

अपेक्षित परिणाम प्रत्येक स्ट्रिंग से केवल संख्या को निकालना है:
字符串 1: 003Preliminary Examination Plan   
字符串 2: Coordination005  
字符串 3: Balance1000sheet

इसे SQL में लागू करने के लिए, आप एक कस्टम उपयोगकर्ता परिभाषा फ़ंक्शन (UDF) बना सकते हैं:
字符串 1: 003
字符串 2: 005
字符串 3: 1000
] फिर, यह जांचता है कि क्या परिणाम स्ट्रिंग को एक पूर्णांक में परिवर्तित किया जा सकता है और तदनुसार इसे वापस कर दिया।

इस फ़ंक्शन का उपयोग करने के लिए, आपको इसे केवल संबंधित कॉलम पर लागू करने की आवश्यकता है:
CREATE FUNCTION dbo.udf_GetNumeric
(
  @strAlphaNumeric VARCHAR(256)
)
RETURNS VARCHAR(256)
AS
BEGIN
  DECLARE @intAlpha INT
  SET @intAlpha = PATINDEX('%[^0-9]%', @strAlphaNumeric)
  BEGIN
    WHILE @intAlpha > 0
    BEGIN
      SET @strAlphaNumeric = STUFF(@strAlphaNumeric, @intAlpha, 1, '' )
      SET @intAlpha = PATINDEX('%[^0-9]%', @strAlphaNumeric )
    END
  END
  RETURN ISNULL(TRIM(@strAlphaNumeric), '0')
END
GO
यह केवल निर्दिष्ट कॉलम में निर्दिष्ट स्ट्रिंग के डिजिटल भाग को लौटाएगा। प्रदान किए गए उदाहरण डेटा के लिए, परिणाम अपेक्षित मूल्य से मेल खाएगा:

003 005 1000

]
]।  यह सुधार फ़ंक्शन स्पष्ट है और समझने और बनाए रखने में आसान है। 
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3