Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

sqlfiddle (ओरेकल) पर चुनिंदा क्वेरी में कॉलम नामों का उपयोग नहीं कर सकता

[TL;DR] सबसे आसान बात ऐसा करने के लिए ऑब्जेक्ट नामों के आस-पास डबल कोट्स का कभी भी उपयोग नहीं करना है और ऑरैकल को केस-सेंसिटिविटी को अपने डिफ़ॉल्ट तरीके से प्रबंधित करने दें।

हालाँकि, आप SQLFiddle में दोहरे उद्धरण चिह्नों का उपयोग कर सकते हैं:

SQL Fiddle

Oracle 11g R2 स्कीमा सेटअप :

CREATE TABLE products
("P_Id" int, "ProductName" varchar2(10), "UnitPrice" numeric, "UnitsInStock" int, "UnitsOnOrder" int)
//

INSERT ALL 
INTO products ("P_Id", "ProductName", "UnitPrice", "UnitsInStock", "UnitsOnOrder")
 VALUES (1, 'Jarlsberg', 10.45, 16, 15)
INTO products ("P_Id", "ProductName", "UnitPrice", "UnitsInStock", "UnitsOnOrder")
 VALUES (2, 'Mascarpone', 32.56, 23, NULL)
INTO products ("P_Id", "ProductName", "UnitPrice", "UnitsInStock", "UnitsOnOrder")
 VALUES (3, 'Gorgonzola', 15.67, 9, 20)
SELECT * FROM dual
//

क्वेरी 1 :

SELECT "ProductName" FROM products

परिणाम :

| ProductName |
|-------------|
|   Jarlsberg |
|  Mascarpone |
|  Gorgonzola |

Oracle डेटाबेस, डिफ़ॉल्ट रूप से, केस संवेदी होते हैं; हालांकि, वे डिफ़ॉल्ट रूप से, सब कुछ को अपर-केस में बदल देंगे ताकि केस संवेदनशीलता आप से, उपयोगकर्ता से अलग हो जाए। केवल जब आप दोहरे उद्धरण चिह्नों का उपयोग करते हैं तो Oracle उस मामले का उपयोग करेगा जिसे आप पहचानकर्ता के लिए निर्दिष्ट करते हैं।

चूंकि आपने CREATE TABLE . में उद्धृत पहचानकर्ताओं का उपयोग किया है कथन आपको SELECT . में उद्धृत पहचानकर्ताओं का उपयोग करने की भी आवश्यकता होगी तालिका निर्माण में उपयोग किए गए सटीक मामले के साथ कथन।

तो, कॉलम का नाम ProductName नहीं है यह "ProductName" है (दोहरे उद्धरणों के साथ)।

दोहरे उद्धरण चिह्नों का उपयोग न करना एक बेहतर उपाय है:

SQL Fiddle

Oracle 11g R2 स्कीमा सेटअप :

CREATE TABLE products(
  P_Id         int,
  ProductName  varchar2(10),
  UnitPrice    numeric,
  UnitsInStock int,
  UnitsOnOrder int
)
//

INSERT INTO products ( P_Id, ProductName, UnitPrice, UnitsInStock, UnitsOnOrder )
  SELECT 1, 'Jarlsberg', 10.45, 16, 15 FROM DUAL UNION ALL
  SELECT 2, 'Mascarpone', 32.56, 23, NULL FROM DUAL UNION ALL
  SELECT 3, 'Gorgonzola', 15.67, 9, 20 FROM DUAL
//

क्वेरी 1 :

SELECT ProductName FROM products

परिणाम :

| PRODUCTNAME |
|-------------|
|   Jarlsberg |
|  Mascarpone |
|  Gorgonzola |


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORACLE SQL डुप्लिकेट को नहीं हटाने के लिए विशिष्ट का चयन करें

  2. हाइबरनेट के साथ ऑरैकल का प्रकार मैप करें

  3. ORA-01756:जब मैं अपना कोड निष्पादित करने का प्रयास करता हूं तो उद्धृत स्ट्रिंग ठीक से समाप्त नहीं होती है

  4. java.time.LocalDate.getDayOfWeek() से java.util.Calendar.get(DAY_OF_WEEK)

  5. Oracle में, क्या किसी दृश्य के माध्यम से किसी रिकॉर्ड को सम्मिलित करना या अद्यतन करना संभव है?