PHP PDO Birden Fazla Tabloda Arama Yapmak
Herkese iyi günler. Veri tabanında movie ve series olmak üzere iki farklı tablom var. Movie olanı daha önceden yaptığım için herşeyi bunun üzerine kurdum. Lakin sonradan series gelince tek bir input üzerinden gelen veriyi hem movie hemde series tablosunda aratmam gerekti.
$row = $db->prepare("SELECT * FROM movie WHERE movie_name LIKE ?");
$row->execute(array("%" . $value . "%"));
$show = $row->fetchAll(PDO::FETCH_ASSOC);
şeklinde arama yapıyorum. $value input üzerinden gelen veri. Lakin burada sadece movie tablosunda arama yapıyorum. Birde aynı anda series tablosunda arama yapması için ne yapmam gerekiyor acaba? Şimdiden teşekkürler.
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (3)
$row = $db->prepare("SELECT FROM movie WHERE movie_name LIKE ? UNION SELECT FROM series WHERE movie_name LIKE ?");
$row->execute(array("%" . $value . "%"));
$show = $row->fetchAll(PDO::FETCH_ASSOC);
bu şekilde de iki tabloda movie_name sütunlarında arama yaptırabilirsin.
sorgunda JOIN kullanırsan çok daha hızlı ve az yük bindirerek arama yapabilirsin. JOIN ile iki veya daha fazla tabloyu tek tabloymuş gibi yapabilirsin. Bu şekilde tek bir tabloda nasıl arama yapıyorsan o şekilde işlerine devam edersin.