je vraiment surpris quand j'ai essayé sous le code MySQL:Mysql complexe où l'article
SELECT * FROM table WHERE (key='free_shipping' and value='yes') AND (key='price' and value='5')
Il ne fonctionne pas. J'ai besoin d'obtenir un produit qui est à la fois free_shipping est 'oui' ET prix égale '5' en même temps. Comment puis-je créer cette requête correctement?
Tableau Structure:
contenu: (TABLEAU 1)
CONTENT_ID TITLE DESCRIPTION DATE
content_fields: (TABLEAU 2)
FIELD_ID CONTENT_ID KEY_NAME VALUE
Exemple (Get produit qui a 1 ID et son envoi est GRATUIT):
SELECT * FROM `contents` as c LEFT JOIN `content_fields` as cf ON c.content_id = cf.content_id WHERE c.content_id = 1 AND cf.key_name = 'free_shipping' AND cf.value = 'yes'
est la clé membre de la table "table"? La clé ne peut pas être à la fois "free_shipping" et "price". – halfdan
Si votre 'table' ne consomme que des valeurs-clés et est utilisée pour le stockage de données" réel ", cela ressemble à un gros problème de conception. – DrColossos