2016-12-22 5 views
-4

hier ist mein CodeWas ist falsch mit der MySQL-Abfrage?

SELECT * FROM bestbuy_product_details 
WHERE model_name like '%'+SELECT Keyword FROM segment+'%'; 

Es gibt zwei Tabellen, i Schlüsselwort aus einer Tabelle überprüfen will wie Klausel in den Modellnamen in einer anderen Tabelle hinzufügen Was die i Syntaxfehler sind nicht immer.

+0

Also, erhalten Sie nicht einen Syntaxfehler, dann? Ich verstehe nicht ... Außerdem macht 'LIKE IN' keinen Sinn. – waka

+0

Das Prozentzeichen kann nicht um den Subselect herum sein – Jens

+0

* "Was ist der Syntaxfehler, den ich nicht bekomme" * - Sie sagen uns. –

Antwort

0

Sie beiden Tabellen beitreten vornehmen müssen mit Join-Bedingung enthält LIKE:

SELECT bpd.* FROM bestbuy_product_details bpd 
join segment s 
ON bpd.model_name like '%'+s.Keyword+'%'; 

Sie können nicht wie machen aus Unterabfrage - das ist nur mit IN oder EXISTS möglich

+1

Erklären Sie bitte ein bisschen mehr, überprüfen Sie [Antwort] – Blag

0

verwenden, funktioniert es für Sie mich hoffe

FROM bestbuy_product_details WHERE model_name like '%'+SELECT Keyword FROM segment+'%';`