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

Lista przedmiotów według kategorii

Prawdopodobnie chcesz dołączyć tabela item2cat na Twojej tabeli przedmiotów:

SELECT
  item.id
, item.name
, item.desc
FROM item
INNER JOIN item2cat ON item.id = item2cat.itemID
WHERE item2cat.catID = [category_id]

lub na przykład

SELECT
  item.id
, item.name
, item.desc
, category.id
, category.name
FROM item
INNER JOIN item2cat ON item.id = item2cat.itemID
INNER JOIN category ON item2cat.catID = category.id
WHERE category.id IN ( [category_id], [category_id], [category_id])

AKTUALIZUJ
Jeśli zmieniłeś identyfikatory tabel w ten sposób:

item (itemId, name, desc)
item2cat (itemId, categoryId)
category (categoryId, name, etc)

możesz przepisać pierwsze zapytanie, tak jak:

SELECT
  item.itemId
, item.name
, item.desc
FROM item
INNER JOIN item2cat USING( itemId )
WHERE item2cat.categoryId = [category_id]

Kolejną zaletą jest to, że id kolumna każdej tabeli jest teraz jednoznaczna.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zapytanie MySQL do dynamicznych wierszy rankingu

  2. Jak odjąć za pomocą SQL w MYSQL między dwiema wartościami daty i godziny i pobrać wynik w minutach lub sekundach?

  3. python:jak otrzymywać powiadomienia o zmianach w bazie mysql?

  4. Dostęp do bazy danych za pomocą Angular

  5. Zaktualizuj dane bazy danych za pomocą przycisku przesyłania