sql >> Databasteknik >  >> RDS >> Mysql

Sql välj elementen som matchar arrayen och visa dem i en rad

Vad du bör göra här är att använda IN CLAUSE . Konvertera $_POST[] till en kommaseparerad sträng.

$choices = implode(', ', $_POST['choices']);

SELECT name, item, price, images FROM `my-tb` WHERE item IN ($choices)

Vilket kommer att producera en fråga som:

SELECT name, item, price, images FROM `my-tb` WHERE item IN (a,b,d)

Detta gör det också så att du inte går över din $_POST och kör flera frågor i onödan.

Sidoanteckning

Jag är inte säker på om din faktiska tabell heter my-tb men om du har hyphens i ditt tabellnamn måste du använda backticks för att kapsla in strängens namn.



  1. Läs JSON-array i MYSQL

  2. Hur man får slutet av månaden i MariaDB

  3. Salesforce TLS 1.0 Utfasning

  4. Hur man uppgraderar från MariaDB 10.4 till MariaDB 10.5