2010-08-25 23 views
109

में मैं निष्पादित करने के लिए एक SQLite समारोह की जगह कोशिश कर रहा हूँ काम नहीं करता है, लेकिन समारोह में एक और क्षेत्र का उपयोग करें।स्ट्रिंग संयोजन SQLite

select locationname + '<p>' from location; 

इस स्निप में, परिणाम 0s की एक सूची है। मैं locationname से पाठ और '<p>' शाब्दिक साथ एक स्ट्रिंग की उम्मीद है।

उत्तर

219

+

select locationname || '<p>' from location; 

के स्थान पर || का उपयोग कर SQLite documentation से प्रयास करें:

|| ऑपरेटर "concatenate" है - यह अपने ऑपरेटरों के दो तारों को एक साथ जोड़ता है।

+2

+1: आप पहले –

+23

फ़ील्ड 1 थे || यदि फील्ड में से कोई एक शून्य है तो फ़ील्ड 2 शून्य हो जाता है। कोई भी ifnull (field1, '') || ifnull (field2, '') करना चाहता है। यदि एक या दोनों फ़ील्ड शून्य हैं तो इससे आपको प्रतिक्रिया मिलेगी। फिर आप यह पता लगाना चाहते हैं कि आप क्या करना चाहते हैं यदि दोनों शून्य थे। –

+2

@TomCerul या का उपयोग 'COALESCE (nullable_field, '') || COALESCE (another_nullable_field, '') ' – zx8754

36

|| ऑपरेटर SQLite में संयोजन है। इस कोड का उपयोग करें: डेटा स्रोत डिजाइनर या विज़ार्ड का उपयोग

select locationname || '<p>' from location; 
+7

डबल पाइप भी श्रृंखलाबद्ध तार के एएनएसआई विधि, ओरेकल और PostgreSQL भी ... –

2

विजुअल स्टूडियो 2010 के लिए, आप का उपयोग कर मुसीबत में हैं || ऑपरेटर। एसक्लाइट डीबी में एक दृश्य बनाएं और उस से अपना डेटा स्रोत बनाएं।

भी this thread देखें।

20

तुलना के लिए,

 
SQLite      || 
Oracle      CONCAT(string1, string2) or || 
MySQL      CONCAT(string1, string2, string3...) or || if PIPES_AS_CONCAT enabled 
Postgres     CONCAT(string1, string2, string3...) or || 
Microsoft SQL Server 2012+ CONCAT(string1, string2, string3...) or + 
Microsoft Access   + 
+1

2012 में शुरू पर समर्थित है, एसक्यूएल सर्वर भी' concat (string1, string2, string3 का समर्थन करता है ...) ' –

+0

@TimCooke धन्यवाद, अद्यतन :) –

+0

@ bburns.km आप मतदान किया 3K अंक को पार करने के: डी –

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