2008-12-17 9 views
5

मेरे पास एक टेबल में दो फ़ील्ड हैं। इनमें बीटीए, बीईए, आरईए जैसे मूल्य शामिल हैं। दूसरे में 1,2,63,103 जैसे मान हैं।एसक्यूएल और पैड में दो स्ट्रिंग्स को 0 स्ट्रिंग के साथ कैसे जोड़ना है?

मैं 2 फ़ील्ड को गठबंधन करना चाहता हूं ताकि वे इस बीटीए 00001, बीटीए 002, बीटीए063, बीटीए 103 की तरह दिखें।

सूचना कैसे करता है, तो संख्या लंबाई में 3 अक्षरों नहीं हैं, मैं पैड के लिए कुछ 0 के चाहते नंबर के बाईं ओर यह 3.

कैसे मैं यह कर के बारे में जाना होगा के बराबर किया जाता? सारणी के कोष्ठकों प्रकार जो बीटीए, बीईए के अनुरूप कहा जाता है और इसकी वजह और ईद क्षेत्र है कि, 1 से मेल खाती है 2, 63 है, और 103.

उत्तर

9
select Type + right('00' + cast(id as varchar(10)), 3) 
from ... 

संपादित करें: आईडी शून्य हो सकता है और आप कर सकते हैं यदि दिखाने के लिए एक शून्य चाहते हैं, तो आप कर सकते हैं:

select Type + right('00' + cast(isnull(id, 0) as varchar(10)), 3) 
from ... 
+0

आपके उत्तर और सीखने के बीच मुख्य अंतर क्या है? – Xaisoft

+0

बहुत कम। मैंने धारणा की है कि आपको आईडी कॉलम से हमेशा एक अंक प्राप्त होगा, जिसमें आपको केवल दो शून्यों को प्रीपेड करने की आवश्यकता है। सीएएसटी एएनएसआई-मानक (इस प्रकार पोर्टेबल) है, जबकि CONVERT SQL सर्वर विशिष्ट है, लेकिन आपको अधिक लचीला रूपांतरण विकल्प देता है। – RedFilter

+0

क्या होगा यदि आईडी कॉलम में शून्य हो सकती है? – Xaisoft

1

सी 1 + सही (('000' + डाली (C2 nvarchar के रूप में (10)),

रूप t1

से 3) का चयन
1

FIELD1 + RI का चयन करें जीएचटी ('000' + कन्वर्ट (वचर, FIELD2), 3)

+0

में बहिष्कृत करना चाहिए, आपके कार्यान्वयन और ऑर्बमन के बीच क्या अंतर है? – Xaisoft

संबंधित मुद्दे