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

पैरामीटरयुक्त तालिका का नाम

गतिशील रूप से प्रश्नों के निर्माण के बिना, प्रत्येक संयोजन में हार्ड कोड करना और जो आप चाहते हैं उसे चुनना एकमात्र तरीका है।


यदि तालिका का नाम संग्रहीत कार्यविधि का एक पैरामीटर है, तो यह IF ब्लॉकों में हो सकता है। लेकिन यह भद्दा लगता है।


यदि प्रत्येक तालिका के फ़ील्ड समान हैं, तो आप तालिकाओं को एक साथ जोड़ सकते हैं और उनमें से चुन सकते हैं...

CREATE VIEW myUnifiedStructure AS
      SELECT 'Table1' AS tableName, * FROM Table1
UNION SELECT 'Table2' AS tableName, * FROM Table2
UNION SELECT 'Table3' AS tableName, * FROM Table3
-- etc

SELECT * FROM myUnifiedStructure WHERE tableName = 'Table1'


यदि प्रत्येक तालिका में फ़ील्ड भिन्न हैं, तो आप केवल फ़ील्ड के सबसेट में रुचि ले सकते हैं...

CREATE VIEW myUnifiedStructure AS
      SELECT 'Table1' AS tableName, field1 AS field1, field4 AS field2 FROM Table1
UNION SELECT 'Table2' AS tableName, field2 AS field1, field3 AS field2 FROM Table2
UNION SELECT 'Table3' AS tableName, field2 AS field1, field4 AS field2 FROM Table3
-- etc


या आप उन क्षेत्रों के लिए NULLs में पास कर सकते हैं जो स्रोत तालिका में मौजूद नहीं हैं...

CREATE VIEW myUnifiedStructure AS
      SELECT 'Table1' AS tableName, NULL   AS field1, field2 AS field2 FROM Table1
UNION SELECT 'Table2' AS tableName, field1 AS field1, field2 AS field2 FROM Table2
UNION SELECT 'Table3' AS tableName, field1 AS field1, NULL   AS field2 FROM Table3
-- etc


  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. MySQL हमेशा के लिए 'डेटा भेजना' ले रहा है। सरल क्वेरी, ढेर सारा डेटा

  3. C . के साथ MySQL डेटाबेस में क्लाइंट इनपुट डालें

  4. MyIsam इंजन लेनदेन समर्थन

  5. Django - OneToOne से एक विदेशी कुंजी संबंध बदलें