2017-01-13 18 views
0

戻り結果

$qry = "SELECT * FROM properties WHERE isLeased = 0 AND featured = 1 ORDER BY RAND() LIMIT 9"; 
$res = mysqli_query($mysqli, $qry) or die('-1' . mysqli_error()); 

私が望む何それが返すことのためでありますこれらの結果と同様に、の結果:

$qry = "SELECT * FROM properties WHERE isLeased = 0 AND propertyType = 'For Sale' ORDER BY RAND() LIMIT 3"; 
$res = mysqli_query($mysqli, $qry) or die('-1' . mysqli_error()); 

しかし、私はちょうどそれが最初のものだけの結果を返します。最初の1以下のコードの2番目のセクションを追加した場合。

いくつかのテーブルに基づいて結果を返すように指示するにはどうすればよいですか?

+1

は1,2,3、...テーブルに参加します。 クエリ内に複数のテーブルフィールドがありません。 または結果クエリプッシュ配列。 – Mohammad

答えて

1

あなたはUNIONクエリを使用することができます

SELECT t1.* 
FROM 
(
    SELECT * 
    FROM properties 
    WHERE isLeased = 0 AND featured = 1 
    ORDER BY RAND() 
    LIMIT 9 
) t1 
UNION ALL 
SELECT t2.* 
FROM 
(
    SELECT * 
    FROM properties 
    WHERE isLeased = 0 AND propertyType = 'For Sale' 
    ORDER BY RAND() 
    LIMIT 3 
) t2 
関連する問題