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

SQL क्वेरी से तालिका कैसे बनाएं

समस्या:

आप SQL क्वेरी द्वारा परिभाषित डेटा के साथ डेटाबेस में एक नई तालिका बनाना चाहेंगे।

उदाहरण:

हम टेबल बनाना चाहेंगे gamer SQL क्वेरी के आधार पर। इस क्वेरी में, हम championship नीचे प्रस्तुत किया गया।

id गेमर स्कोर चैम्पियनशिप_डेट
1 एलिस 14 2020-08-10
2 सुपरवाइजर 10 2020-09-28
3 हैप्पीमैन 0 2020-08-10
4 लुकास 6 2020-08-10
5 ओली 12 2020-08-10
6 बड़ा गेमर 7 2020-09-12

डेटाबेस में, चलिए gamer जो तालिका में परिभाषित सभी स्तंभों में डेटा संग्रहीत करेगा championship (id , gamer , score , और championship_date )

समाधान 1:

CREATE TABLE gamer 
AS  
SELECT
  *
FROM championship;

चर्चा:

यदि आप एक नई तालिका बनाना चाहते हैं, तो पहला कदम CREATE TABLE का उपयोग करना है खंड और नई तालिका का नाम (हमारे उदाहरण में:gamer ) फिर, AS . का उपयोग करें कीवर्ड और एक SELECT प्रदान करें कथन जो नई तालिका के लिए डेटा का चयन करता है। हमारे उदाहरण में, हमने championship तारांकन (*) का उपयोग करके। परिणाम सेट तालिका में सभी रिकॉर्ड प्रदर्शित करता है championship

हालांकि, यदि आप रिकॉर्ड्स के केवल एक सबसेट के साथ एक तालिका बनाना चाहते हैं, तो आप नीचे दिए गए उदाहरण की तरह चयनित क्वेरी निर्दिष्ट कर सकते हैं।

समाधान 2:

CREATE TABLE gamer 
AS  
SELECT
  gamer, score, championship_date
FROM championship 
WHERE championship_date <= 2020-08-10;

यहाँ परिणाम सेट है:

गेमर स्कोर चैम्पियनशिप_डेट
एलिस 14 2020-08-10
हैप्पीमैन 0 2020-08-10
लुकास 6 2020-08-10
ओली 12 2020-08-10

SELECT query केवल championship_date . के साथ रिकॉर्ड्स को पुनः प्राप्त करता है 2020-08-10 के बराबर या उससे अधिक की तारीख (WHERE championship_date <= 2020-08-10 ) नई तालिका पिछले उदाहरण की तुलना में कम कॉलम संग्रहीत करती है (SELECT gamer, score, championship_date ) कॉलम के बिना id

इस समस्या का एक समान समाधान SELECT INTO . का उपयोग करना है एक नई तालिका बनाने और किसी अन्य तालिका से डेटा कॉपी करने के लिए खंड। कोड पर एक नज़र डालें:

समाधान 3:

SELECT
  gamer, score, championship_date
INTO gamer
FROM championship 
WHERE championship_date <= 2020-08-10;

परिणामी तालिका समान है। ध्यान दें कि यह निर्माण SQL मानक में मौजूद नहीं है। इस SQL ​​​​कमांड में, हम सबसे पहले SELECT write लिखते हैं , फिर कॉलम की सूची, कीवर्ड के आगे INTO , और अंत में उस नई तालिका का नाम जिसे हम बनाना चाहते हैं। इसके बाद, आप WHERE जोड़ सकते हैं और अन्य SQL खंड जैसे GROUP BY या HAVING नई तालिका के लिए रिकॉर्ड फ़िल्टर करने के लिए।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. विभिन्न कर्सर विकल्पों का क्या प्रभाव हो सकता है?

  2. प्राथमिक कुंजी पर अनुक्रमणिका के लिए एक साधारण उपयोग केस

  3. SQL में एक वर्ग की गणना कैसे करें

  4. SQL INSERT क्वेरी में डुप्लीकेट रिकॉर्ड डालने से कैसे बचें (5 आसान तरीके)

  5. निकटतम मैच, भाग 3