जवाबों:
यह ||उदाहरण के लिए है:
select 'Mr ' || ename from emp;
एकमात्र "दिलचस्प" सुविधा जो मैं सोच सकता हूं, वह यह है कि 'x' || nullरिटर्न 'x', जैसा कि nullआप शायद उम्मीद नहीं कर सकते हैं।
||ओरेकल में एक तार्किक ऑपरेटर नहीं है, इसलिए, 'x'||nullरिटर्न x।
AND, NOTतो बेशक ||लॉजिकल ऑपरेटर नहीं है। लेकिन 'x'||nullलौटने के कारण क्या होता है x? n+nullरिटर्न अशक्त है, तो +एक तार्किक ऑपरेटर है?
वहाँ भी है, लेकिन यह ज्यादा इस्तेमाल नहीं किया है
select concat('a','b') from dual;
CONCATअन्य DBMSes (कम से कम MySQL और Postgres) के साथ भी संगत है।
nvl()।)
CONCATMicrosoft SQL Server 2012 और उसके बाद भी उपलब्ध है । CONCAT, हालांकि गैर-मानक, निश्चित रूप से जाने का तरीका है यदि आप चाहते हैं कि आपका कोड पोर्टेबल हो। ( ||वास्तविक एएनएसआई मानक ऑपरेटर है, हालांकि आप इसके लिए समर्थन को देखकर इसे नहीं जान पाएंगे!)
मैं 2 स्ट्रिंग्स के साथ काम करते समय कंकट का सुझाव दूंगा, और || जब वे तार 2 से अधिक हों:
select concat(a,b)
from dual
या
select 'a'||'b'||'c'||'d'
from dual
concat(a,b)से अधिक a||b?
CONCAT(CONCAT(,),)दो से अधिक तारों को समतल करते समय मेरे लिए काम करना ।
मेरी समस्या के लिए आवश्यक (केवल) तिथि तार के साथ काम करने और बनाने YYYYMMDDसे YYYY-MM-DDइस प्रकार है (यानी दिनांक स्वरूप को बदलने के बिना):
CONCAT(CONCAT(SUBSTR(DATECOL,1,4),SUBSTR(DATECOL,6,2)),SUBSTR(DATECOL,9,2)) AS YYYYMMDD