PHP / MySQL / Kullanım Dize Veritabanı SELECT için

3 Cevap php

Ben bir dize var:

 $string = "12,15,22";

Bu değerlerin her biri bir usrID temsil eder ve ben $ dize ile ilişkili satırları seçmek için bu kullanmak istiyorum.

Böyle bir şey:

SELECT usrFirst, usrLast FROM tblusers WHERE usrID = 12 OR 15 OR 22.

Şimdi, $ string her zaman değişir ve bazen kimlikleri farklı bir sayı olabilir. Örn., Bazen 3, bazen 4.

Teşekkürler!

3 Cevap

Eğer sayı çok varsa çok yavaş olmasına rağmen, IN kullanın:

SELECT usrFirst, usrLast FROM tblusers WHERE usrID IN ($string)

W3Schools IN üzerinde daha fazla bilgi vardır.

Eğer sayı çok varsa, bu hızlandırmak için nasıl bilgi için bir göz here var.

gibi bir şey yapabilirsiniz:

(12, 15, 22) olarak usrID tblUsers DAN usrFirst, usrLast SELECT;

sen de yapabilirsin:

$string = str_replace(',',' OR usrID=',$string);
mysql_query('SELECT usrFirst, usrLast FROM tblusers WHERE usrID='.$string);