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

Baza danych atrybutów MySQL

Nie używaj składni niejawnego łączenia. Aby uzyskać drugi atrybut, potrzebny jest drugi zestaw złączeń.

SELECT upa1.value, upa2.value, up1.status, u1.status 
  FROM product p
    /* These joins get attribute/value for 'username' attribute */
    INNER JOIN product_attribute pa1
      ON p.product_id = pa1.product_id
        AND pa1.attribute_name = 'username'
    INNER JOIN user_product_attribute upa1
      ON pa1.product_attribute_id = upa1.product_attribute_id
    INNER JOIN user_product up1
      ON upa1.user_product_id = up1.user_product_id
    INNER JOIN user u1
      ON up1.user_id = u1.user_id 
    /* These joins get attribute/value for 'domain' attribute */  
    INNER JOIN user_product_attribute upa2 
      ON upa1.user_product_id = upa2.user_product_id
    INNER JOIN product_attribute pa2
      ON upa2.product_attribute_id = pa2.product_attribute_id            
        AND pa2.attribute_name = 'domain'
  WHERE p.product_name = 'email'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP/MySql Wybierz komentarze pogrupowane z odpowiedziami

  2. Jak dodać prefiks wszystkich tabel w mysql

  3. Błąd połączenia MySQLI pokazuje hasło

  4. INSERT ... SELECT, InnoDB i blokowanie

  5. Kolejność MySQL według trafności