MySQL / PHP ile sonuçların bir listesini almak için iki tablo iki sorguları çalıştırmak

3 Cevap php

Biz widgetid arayacak bir alan ile iki tablo her vardır.

Ben her iki tablodan widgetid yılların tek bir liste dönecektir, hem tablolar üzerinde bir sorgu çalıştırmak gerekir.

Ben bunu nasıl hiçbir fikrim yok.

Ne ben şimdi var ise:

        $result = mysql_query("SELECT * FROM `inventory` WHERE find_in_set('$serial', items)") or die(mysql_error());
        while($row = mysql_fetch_array($result)){ 
        foreach($row AS $key => $value) { $row[$key] = stripslashes($value); } 
        $widgetid = $row['widgetid'];

        //Do Stuff For Each WidgetID

        }

Şimdi ben aynı $ serisini almak ve widgetid yıllardan listesine için ikinci tablo aramak gerekir. Ama yine de biri olarak widgetids hem listeleri ile, aynı yerde "şeyler yapmak" gerekiyor

3 Cevap

SELECT widgetid FROM TABLE1 WHERE find_in_set('$serial', items)
UNION
SELECT widgetid FROM TABLE2 WHERE find_in_set('$serial', items)

Eğer bu sizin için ne arıyorsanız var mı? Bu iki seçilmiş querys birleştirmek ve tek bir sonuç olarak size verecektir.

Ben bir UNION arıyoruz düşünüyorum.

Neden bir birlik kullanmayın

Select widgetid from table1   
UNION
select widgetid from table2