sql >> Databáze >  >> RDS >> Mysql

Sql vybere prvky odpovídající poli a zobrazí je v řadě

Co byste měli udělat, je použít IN CLAUSE . Převeďte $_POST[] na řetězec oddělený čárkami.

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

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

Což vytvoří dotaz jako:

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

Díky tomu také nebudete přes svůj $_POST zacyklit a zbytečně provádět více dotazů.

Poznámka

Nejsem si jistý, zda se vaše skutečná tabulka jmenuje my-tb ale pokud máte hyphens v názvu tabulky musíte použít backticks k zapouzdření názvu řetězce.



  1. Jaké účinky má použití binárního řazení?

  2. Hromadný sběr PL/SQL s doložkou LIMIT v databázi Oracle

  3. Aggregate String Concatenation v Oracle 10g

  4. Jak přenést datum a čas na čas