2016-03-09 81 views
2

我試圖結合我的SQL查詢並一次性獲取他們的結果。我嘗試了許多JOIN方法,但都失敗了。如何將同種查詢與不同變量結合起來

由於性能對我的網站很重要,所以我不想單獨提取它們,並希望將它們全部結合起來。哪種方法是最好的方法?我需要學習清楚的方法,因爲我將以相同的方式實現所有類似的查詢。 PS:我知道mysql_query已被棄用,我需要升級到PDO或mysqli_query。但是,我需要在這個項目中使用mysql_query,因爲一個特殊的原因。

+1

你嘗試過'union'還是你也可以做一個'subquery'? –

回答

1

可以使用conditional aggregationjoin在單個行返回的所有記錄:

select 
    sum(case when u.bakiye >= u2.bakiye then 1 
      else 0 end) bakiye_count, 
    sum(case when u.kackatinahafta >= u2.kackatinahafta then 1 
      else 0 end) kackatinahafta_count, 
    sum(case when u.nekadarhafta >= u2.nekadarhafta then 1 
      else 0 end) nekadarhafta_count, 
    ... 
from uye u 
    join uye u2 on u2.id = '$profilid' 

此假設uye對id字段重複記錄。

相關問題