2013-04-25 8 views
12

मैं एक GUID कैसे परिवर्तित कर सकता हूं जो 36 वर्णों को VARCHAR (32) में परिवर्तित कर सकता है?GUID को वर्चर में परिवर्तित करें (32)

मैं डेटा को एक टेबल से दूसरे में कॉपी करने की कोशिश कर रहा हूं। इन दो तालिकाओं से दो समान कॉलम हैं।

  1. Table1.colx तो यह हाइफ़न
  2. संगत स्तंभ table2.colx है की वजह से कुल में लंबाई में 36 वर्ण है लेकिन यह एक VARCHAR (32)
है एक GUID है

मैं एक GUID को VARCHAR में परिवर्तित करने का एक तरीका ढूंढ रहा हूं, लेकिन मुझे हाइफ़न को हटाना होगा। अब तक मैं ऐसा करने का एक तरीका खोजने के अपने प्रयासों में असफल रहा हूं।

उत्तर

28

मुझे लगता है कि यह एसएसएमएस टैग से SQL सर्वर है।

, एक स्ट्रिंग के लिए GUID कन्वर्ट तो रिक्त स्ट्रिंग के साथ हाइफ़न बदल देते हैं:

REPLACE(CAST(table1.colx AS VARCHAR(36)),'-','') 
+0

Ahhhh, उस अर्थ की एक दुनिया बना देता है। आपका बहुत बहुत धन्यवाद। मैं बहुत करीब सोच रहा था कि यह सब एक कदम में करने की कोशिश कर रहा था। – Jfabs

+0

क्या आप शायद इसे पहले स्ट्रिंग में परिवर्तित करने के उदाहरण के साथ मेरी सहायता कर सकते हैं? मैं सोच रहा हूं कि मुझे एक अस्थायी तालिका या कुछ सेट अप करना चाहिए ... – Jfabs

+1

यह उत्तर में है: 'CAST (table1.colx AS VARCHAR (36))'। यह GUID के स्ट्रिंग प्रस्तुति को वापस कर देगा। आप इसे कहीं भी इस्तेमाल कर सकते हैं, आमतौर पर आप कॉलम का संदर्भ लेंगे (एक चयन में, कहां, जॉइन, आदि)। यदि आपको यह पता लगाने में परेशानी हो रही है कि इसे कहां रखा जाए, तो एक नया प्रश्न खोलें और अपना कोड शामिल करें। मुझे यहाँ पिंग करें और मुझे इसका उत्तर देने में खुशी होगी। –

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