Mysql
 sql >> Baza danych >  >> RDS >> Mysql

kolumna mySQL do przechowywania tablicy

MySQL nie obsługuje przechowywania tablic. Możesz jednak użyć drugiej tabeli, aby emulować tablicę, przechowując relację między użytkownikami a elementami. Załóżmy, że masz tabelę users :

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

I masz tabelę definiującą items :

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

Możesz powiązać, jakie elementy ma użytkownik, używając tabeli podobnej do 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)
);

Następnie, aby określić, jakie elementy użytkownik 123 nabył, możesz użyć JOIN jest podobny do:

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. Jak wykonać kopię zapasową bazy danych Moodle MySQL

  2. Projekt bazy danych do przechowywania wzorców kolorów obrazu w MySQL w celu wyszukiwania obrazu według koloru

  3. Podziel zakresy dat na odpowiednie tygodnie

  4. Jak mogę ograniczyć użytkownika MySQL do określonych tabel?

  5. Przekazywanie wartości z listy rozwijanej lub pola tekstowego w Wordpress do zapytania MySQL w functions.php