डेटाबेस वातावरण में, एम्बेडेड संख्यात्मक डेटा को स्ट्रिंग से निकालने की आवश्यकता हो सकती है। निम्नलिखित उदाहरण पर विचार करें: ] स्ट्रिंग 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