v2.5.2
Giriş yap

PHP ile MySQL Sorgusunda Çoklu Arama Yapma

redline
596 defa görüntülendi ve 1 kişi tarafından değerlendirildi

Merhaba PT


- items
-------------------------------------
| item_id | item_name | item_filter |
-------------------------------------
| 1       | prototurk | 1,3,4       |
| 2       | soru      | 1           |
| 3       | cevap     | 6,3         |
| 4       | alani     | 1,2,3       |
-------------------------------------

$itemSQL    = "SELECT * FROM items";
$itemQuery  = $db -> prepare($productSQL);
$itemQuery -> execute();
$itemRows   = $itemQuery -> fetchAll(PDO::FETCH_ASSOC);

şeklinde bir tablom var. Ben bu tabloda item_filter kolonumun içindeki virgülle ayrılmış verilerden sorguda filtreleme yapmak istiyorum.

Örneğin 1 ve 3'ü gönderdiysem 1 ve 4 ID numaralı verinin dönmesini,
Sadece 1 gönderdiysem 1 - 2 - 4 ID numaralı verinin dönmesini istiyorum.

redline
754 gün önce

@bugraskl hocam FIND_IN_SET()'i araştırmalarım sonucu görmüştüm ama ben mi kullanamadım bilemedim. :)


$itemSQL = 'SELECT * FROM items WHERE FIND_IN_SET("1,3", item_filter)';

şeklinde sorgu yaptığımda sonuç 0 dönüyor. :)