2016-07-07 34 views
0

我需要一個連接查詢來獲取數據,當我點擊一個按鈕。點擊部分是在PHP和jQuery的幫助下完成的。但連接查詢失敗。請幫我解決這個問題。需要幫助來解決內部加入查詢中的問題

我試着查詢

SELECT events.id, 
        form_values.id, 
        form_values.value, 
        form_fields.title, 
        form_fields.relation FROM events 
     INNER JOIN form_values 
    ON form_values.parent_id = events.customer_id 
     INNER JOIN form_fields 
     ON form_fields.id = form_values.form_field_id 
WHERE form_fields.relation = 'event' AND events.id = '10029' 

form_fields:包含HTML的輸入類型的詳細信息。將輸入類型動態地列入表單。

form_values:它用於存儲輸入類型的動態值。

form_values

form_field_id:與form_fields.id

PARENT_ID:與events.customer_id

id form_field_id value parent_id 

1  2   3  3119 
2  5   yes  3119 
3  10  yes  3119 
4  10  yes  3118 
5  6   text 3118 
6  4   on  3118 

form_fields

id  title   type  option       relation 

    2  select box select  2:CustomerTwo|3:CustomerThree customer 
    4  check box  checkbox         customer          
    5  radio one  radio  yes:Yes|no:No     customer 
    6  text box  textbox         event 
    10  radio two  radio  yes:Yes|no:No     event 

事件

id  customer_id title price 

10028  3119  Test1  125 
10029  3118  Test2  132 
10030  3118  Test3  133 

結果我需要的是:

當我點擊一個按鈕id (events.id = 10029)將通過和獲取數據。 我需要的結果,其中form_fields.relation = "event"events.id = clicked ID(10029, 10028)

events.id form_fields.value form_fields.title form_fields.relation 
10029   text     text box   event 
10029   yes     radio two   event 
10028   yes     radio two   event    
+0

可能在where子句中將'events.id ='10029''改成('10029','10028')'中的events.id。 In將以一些性能爲代價來支持一個或多個事件ID。雖然...如何點擊導致2 ID被選中。我假設有一個複選框或PHP中包含傳遞多個值的東西。 – xQbert

+0

那麼'in'仍然會使用索引 – Drew

回答

0

我的事情你有數據錄入錯誤,我運行相同的查詢,但得到的答覆正是你想要的,那麼請檢查您的資料,請和我跑了查詢SELECT events.id, form_values.id, form_values.value, form_fields.title, form_fields.relation FROM events INNER JOIN form_values ON form_values.parent_id = events.customer_id INNER JOIN form_fields ON form_fields.id = form_values.form_field_id WHERE form_fields.relation = 'event' AND events.id IN('10029','10028')