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

सरणी रखने के लिए mySQL स्तंभ

MySQL सरणियों को संग्रहीत करने का समर्थन नहीं करता है। हालाँकि, आप उपयोगकर्ताओं और वस्तुओं के बीच संबंध को संग्रहीत करके किसी सरणी का अनुकरण करने के लिए दूसरी तालिका का उपयोग कर सकते हैं। मान लें कि आपके पास टेबल है users :

CREATE TABLE users (
    user_id SERIAL PRIMARY KEY,
    ...
);

और आपके पास items . को परिभाषित करने वाली एक तालिका है :

CREATE TABLE items (
    item_id SERIAL PRIMARY KEY,
    ...
);

आप user_items . जैसी तालिका का उपयोग करने वाले उपयोगकर्ता के पास कौन से आइटम हैं, आप संबंधित कर सकते हैं :

CREATE TABLE user_items (
    id SERIAL PRIMARY KEY,
    user_id BIGINT UNSIGNED NOT NULL,
    item_id BIGINT UNSIGNED NOT NULL,
    ...,
    FOREIGN KEY (user_id)
        REFERENCES users (user_id),
    FOREIGN KEY (item_id)
        REFERENCES items (item_id)
);

फिर, यह निर्धारित करने के लिए कि कौन से आइटम उपयोगकर्ता 123 हासिल कर लिया है, आप उपयोग कर सकते हैं जॉइन करें के समान:

SELECT items.*
FROM users
INNER JOIN user_items
    ON user_items.user_id = users.user_id
INNER JOIN items
    ON items.item_id = user_items.item_id
WHERE users.user_id = 123; -- Or some other condition.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL दो क्षेत्रों में तालिकाओं में कैसे शामिल हों

  2. जेपीए हाइबरनेट हठ अपवाद [पर्सिस्टेंस यूनिट:डिफ़ॉल्ट] हाइबरनेट सत्र फैक्ट्री बनाने में असमर्थ

  3. MySQL 5.7 पर मेटाडेटा लॉक, लॉकिंग प्रक्रिया नहीं मिल रही है?

  4. जब प्रत्येक प्रविष्टि एक मध्यम आकार के आकार के क्षेत्र में फिट होगी तो MySQL लॉन्गटेक्स्ट आकार के क्षेत्र का उपयोग करने में क्या नुकसान है?

  5. संसाधन आईडी प्राप्त करना #3 MySql में त्रुटि