簡體   English   中英

在 MySQL 中的 Where 子句中選擇具有多個 IN 集合的查詢

[英]Select Query with Multiple IN Collection in Where Clause in MySQL

我有問答(多項選擇)表。 答案表包含問題 ID 和答案 ID(它不是唯一 ID)。

參考答案表:

QID       AID        Answer
_______________________________
 1         1          Good
 1         2          Very Good
 1         3          Excellent
 2         1          Delhi
 2         2          Mumbai
 2         3          Chennai
 2         4          Kolkata

用戶對問題 1 (QID) 的回答是 2 (AID),問題 2 (QID) 是 3 (AID)。

我需要

SELECT the Answer "Very Good" (1 -> 2) and "Chennai" (2 -> 3).

(QID -> AID) => {(1 -> 2), (2 -> 3), .... n} sets

我沒有主鍵。 在這個表結構中如何實現我的選擇? 請幫助我...

試試這個下面的查詢

// example array
$user_selected_array=array(
    0=>array(1,2),
    1=>array(2,3)
);
$WHERE='';
foreach($user_selected_array as $key=>$val) {
    $WHERE .= ($WHERE!='')?" OR ":"";
    $WHERE .= "(QID=$val[0] AND AID=$val[1])";
}

SELECT Answer FROM AnswerTable WHERE $WHERE

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM