Dizi değerlere dayalı sorgu yazmak nasıl

2 Cevap php

Ben çalışan kimlikleri bir dizi var:

34, 35, 40, 67, 54 ve böyle devam eder.

Ya benim 'çalışanların' tablosunu sorgulamak ve ilişkili tüm çalışanların adlarını bulmak için basit yolu olurdu?

Yani dizideki kimlikleri her biri için 'isim' dönmek bir sorgu.

2 Cevap

$id_str = implode(', ', $ids);
mysql_query("SELECT name FROM employees WHERE id IN ($id_str)");

Eğer bir sonuç satırda hepsini isterseniz, MySQL GRUP CONCAT kullanın.

Bir dize içine dizi çökmek, ve sonra MySQL () işlevini kullanın.

SELECT col1, col2, col3
FROM employees
WHERE col1 IN(1, 12, 38, 52)

Sen implode() ile bu in dizesini alabilirsiniz

$ids = array(1,132,32,52);
$inString = implode(",",$ids);

$query = "SELECT col1, col2, col3
          FROM employees
          WHERE col1 IN ({$inString})";