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.