我想要合併兩個複雜的MYSQL查詢的方法。合併兩個複雜的MYSQL查詢
查詢1:
SELECT p.*
FROM posts p
INNER JOIN
(
SELECT a.ID
FROM posts a
INNER JOIN post_tags b
ON a.ID = b.post_ID
WHERE a.post LIKE '%mmmm%' AND
b.tagname IN ('#test','#iseeyou')
GROUP BY ID
HAVING COUNT(DISTINCT b.tagname) = 2
) sub ON p.ID = sub.ID
ORDER BY p.upvotes DESC, p.unix_timestamp DESC
問題2:
SELECT p.*, ((upvotes + 1.9208)/(upvotes + downvotes) - 1.96 * SQRT((upvotes * downvotes)
/(upvotes + downvotes) + 0.9604)/(upvotes + downvotes))
/(1 + 3.8416/(upvotes + downvotes)) AS ci_lower_bound
FROM posts p WHERE upvotes + downvotes > 0
AND p.unix_timestamp BETWEEN 1363023402 AND 1363109802 ORDER BY ci_lower_bound DESC
一個小的表定義在SQL Fiddle
實際上給出的,第一個是一個搜索查詢和所述第二人給基於過去24小時內投票的最流行結果,所以我想使用基於第二個公式中使用的公式的搜索查詢以及時間範圍
只是出於好奇:),爲什麼ü不使用存儲過程,這樣做 – NetStarter 2013-04-05 13:27:25
爲什麼要合併他們在所有? – fancyPants 2013-04-05 13:27:53
@NetStarter我不知道如何使用存儲過程。 – coder101 2013-04-05 13:29:09