2012-12-26 50 views
1

在我的網頁我有一個名爲最近的活動選項卡,在我所顯示兩個不同類型的動作組合兩個表中的MySQL最近的活動功能

  • 最近添加的選擇
  • 近日投票選擇

爲je_addchoice表stucture

je_addpoll表

poll_id | user_id | poll_name | category_id | start_date | end_date 

    1  | 20 |Naturalflrs| 18  | 2012-12-03 | 2095-12-25 

je_addchoice表

choice_id | poll_id | choice_creator_id | choice_name | choice_image | description | ctime 

    1 | 1 |  20   | Greenish | forest.jpg | forest  |135453 

je_user_vote表

vote_id | user_id | poll_id | choice_id | datetime_voted | user_type 

    12 | 31  | 1 | 1  |12-12-2606:23:17| normal 

已經我的結果頁面顯示如下所示

The recently added choices are displayed

上述結果使用查詢被顯示

$result=mysql_query("SELECT * FROM je_addchoice, je_addpoll where je_addpoll.start_date <= '$check_date' AND je_addpoll.end_date >='$check_date' AND je_addpoll.poll_id=je_addchoice.poll_id order by je_addchoice.choicecreationtime desc"); 

兩個表

1)je_addpoll(用於投票主表)

2)je_addchoice(增加對投票選擇)

但是我想在這裏做的是如果任何用戶對投票進行投票,它將存儲到

je_user_vote表中,如上所示。

我想要顯示的最近投票選擇在同一標籤

+0

你是怎樣嘗試結合兩個表,並沒有你會得到什麼結果呢? – DWright

+0

我用左連接查詢來組合這兩個表,但我得到了錯誤的mysql查詢 – Rithu

+0

詳細解釋你的問題... –

回答

1

之前je_addchoice.choicecreationtime desc

這樣試試這個

使用desc爲了datetime_voted

$result=mysql_query("SELECT * FROM (SELECT P.poll_id,P.user_id,P.poll_name,P.category_id,P.start_date,P.end_date,C.choice_id,C.choice_creator_id,C.choice_name,C.choice_image,C.description,C.ctime FROM je_addchoice C, je_addpoll P where P.start_date <= '$check_date' AND P.end_date >='$check_date' AND P.poll_id=C.poll_id order by C.choicecreationtime desc) N,je_user_vote U WHERE U.poll_id=N.poll_id order by U.datetime_voted desc,N.choicecreationtime desc"); 

OR

$result=mysql_query("SELECT N.poll_id,N.user_id,N.poll_name,N.category_id,N.start_date,N.end_date,N.choice_id,N.choice_creator_id,N.choice_name,N.choice_image,N.description,N.ctime FROM (SELECT P.poll_id,P.user_id,P.poll_name,P.category_id,P.start_date,P.end_date,C.choice_id,C.choice_creator_id,C.choice_name,C.choice_image,C.description,C.ctime FROM je_addchoice C, je_addpoll P where P.start_date <= '$check_date' AND P.end_date >='$check_date' AND P.poll_id=C.poll_id order by C.choicecreationtime desc) N,je_user_vote U WHERE U.poll_id=N.poll_id order by U.datetime_voted desc,N.choicecreationtime desc"); 
+0

datetime_voted字段位於表je_user_vote表中。如何結合這我不知道。目前的結果是使用兩個表 je_addpoll(使用pollid爲外鍵的選擇將顯示特定的民意調查) je_addchoice(爲調查主表) 所示。現在我想將je_user_vote表結合起來,最近投票 – Rithu

+0

所以,你意思是,你想結合3張桌子? – Ravi

+0

是的,已將這兩個表格合併顯示最近添加的內容。現在我想結合三個表格來顯示兩個動作 最近添加的 最近投票 – Rithu