मैं एक विस्तृत कॉलम तालिका बनाने के लिए कोशिश कर रहा हूँ से विशिष्ट मान चुनें, 20,000 कॉलमनक्शा
शुरू में मैं सोच रहा था मैं का प्रयोग करेंगे:
CREATE TABLE details (
key TEXT,
detail map<TEXT, TEXT>
PRIMARY KEY (KEY)
);
इस तालिका में सम्मिलित करना ठीक काम करता है
UPDATE details SET detail = detail + { 'col1': '12'} where key='123' ;
UPDATE details SET detail = detail + { 'col20000': 'ABCD'} where key='123' ;
हालांकि, मैं एक व्यक्तिगत विवरण पढ़ना चाहता हूं:
select detail[col1] where key='123'
,210
जब इस क्वेरी मैं निम्नलिखित त्रुटि मिलती है पर:
no viable alternative at input '['
क्या यह काम करते हैं, या मैं एक अलग दृष्टिकोण की आवश्यकता है?
धन्यवाद, यही वह दृष्टिकोण है जिसे मैंने लिया है। – e90jimmy
अभी भी इसे नहीं देखते हैं 3.9, आश्चर्य कीजिए कि कारण क्या है, इसे नहीं मिला। AFAIK, वे खुद कॉलम के रूप में संग्रहीत हैं। "संग्रह कॉलम का आंशिक पढ़ना सीक्यूएल में संभव नहीं है। संग्रह से डेटा पुनर्प्राप्त करने का एकमात्र तरीका संग्रह को पूरी तरह से पढ़ना है; इस कारण से, संग्रह संग्रह में बड़े, असंबद्ध डेटासेट को स्टोर करना आम तौर पर अव्यवहारिक है" https://github.com/apache/cassandra/blob/cassandra-3.6/CHANGES.txt – kisna