0

これらの2つのSELECTクエリで1つの結果が得られたら、それを次のように並べ替えます。date_time

選択1:

"SELECT * FROM `table` WHERE `f_id` = '$uid' AND `t_id` = '$pid'"

選択2:

"SELECT * FROM `table` WHERE `f_id` = '$pid' AND `t_id` = '$uid'"

私はそれを1つのWHERE句に入れようとしましたが、それは不可能です。サブクエリにも入れようとしましたが、SELECT2が正しく結合されましたSELECT1:/これら2つのクエリの1つの出力配列が必要ですdate_time。どうしてそれは可能ですか?

4

3 に答える 3

5
SELECT * FROM `table` WHERE `f_id` = '$uid' AND `t_id` = '$pid'
UNION ALL
SELECT * FROM `table` WHERE `f_id` = '$pid' AND `t_id` = '$uid'

編集:

えーと…すみません、同じテーブルだとは思いませんでした。

SELECT * FROM table
  WHERE (`f_id` = '$uid' AND `t_id` = '$pid') OR (`f_id` = '$pid' AND `t_id` = '$uid')
  ORDER BY date_time
于 2013-03-24T20:34:59.860 に答える
3

どうですか:

SELECT 
    * 
FROM 
    `table` 
WHERE 
    (`f_id` = '$uid' AND `t_id` = '$pid') OR 
    (`f_id` = '$pid' AND `t_id` = '$uid')
ORDER BY 
    `date_time` DESC
于 2013-03-24T20:36:35.207 に答える
0

これを試して

   SELECT * FROM 

      ( select * FROM `table` WHERE `f_id` = '$uid' AND `t_id` = '$pid'
       union all 
        SELECT * FROM `table` WHERE `f_id` = '$pid' AND `t_id` = '$uid' )t

   ORDER BY date_time
于 2013-03-24T20:39:40.210 に答える