[英]Match the elements of array in query
我只想選擇$arr_tags
與$arr_tags
匹配所有array_elements with tags_is_tags
。 例如在這種情況下將輸出0個帖子,因為一個數組元素與tags_id_tags
不匹配
我該怎么做?
$arr_tags = array("16", "17", "36", "543"); // the dimension is not always the same
post_id_post tags_id_tags
282 16
282 17
282 36
282 546
我有此代碼,但查詢尚未完成。
$sql = $db -> prepare("
SELECT post_id_post
FROM posts
// ...
");
$sql -> bind_param('s', $val);
$sql -> execute();
$sql -> bind_result($d_post);
謝謝你的時間
SELECT post_id_post
FROM posts
WHERE tags_id_tags IN ("16", "17", "36", "543")
GROUP BY post_id_post
HAVING COUNT(*) = 4
您將所有必需標簽的ID放在IN
子句中,並將COUNT(*) = 4
表達式中的數字更改為傳遞的標簽數
在我看來,您想知道如何提出正確的問題之多。 這里的魔術詞是“關系划分”。
它是Codd 關系代數中的運算符之一,此后提出了幾種變體。 最近, 克里斯·伊達特( Chris Date )提出用圖像關系代替整個概念。
SQL沒有明確的除法運算符。 使用其他運算符有多種解決方法,最合適的方法取決於您的要求,包括精確除法或除法除法,以及如何處理空除數。 然后是通常的注意事項:SQL產品和版本,性能,個人風格和品味等。
這里有幾篇文章可以幫助您進行以下選擇:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.