【发布时间】:2012-09-16 22:10:34
【问题描述】:
我正在寻找获得结果的最佳方法,数据库包含超过 100000 条帖子和超过 100000 只猫
这是我的桌子
猫
-----------------
- id | name |
-----------------
- 1 | x |
-----------------
- 2 | y |
-----------------
发帖
--------------------------------------
- id | cat_id | title | content |
--------------------------------------
- 1 | 1 | Post 1 | .. . . .|
--------------------------------------
- 2 | 1 | Post 2 | . . . . .|
--------------------------------------
- 3 | 2 | Post 3 | .. . . .|
--------------------------------------
- 4 | 1 | Post 4 | . . . . .|
--------------------------------------
- 5 | 1 | Post 5 | .. . . .|
--------------------------------------
- 6 | 2 | Post 6 | . . . . .|
--------------------------------------
- 7 | 1 | Post 7 | .. . . .|
--------------------------------------
- 8 | 2 | Post 8 | . . . . .|
--------------------------------------
这是我想要得到的结果
结果
--------------------------------------
-Postid | cat_id | title | content |
--------------------------------------
- 1 | 1 | Post 1 | .. . . .|
--------------------------------------
- 2 | 1 | Post 2 | . . . . .|
--------------------------------------
- 3 | 2 | Post 3 | .. . . .|
--------------------------------------
- 6 | 2 | Post 4 | . . . . .|
--------------------------------------
这是我刚写的查询,但我正在寻找最佳查询
SELECT
*
From
post
WHERE posts.cat_id = 1 limit 2
UNION
SELECT
*
From
post
WHERE posts.cat_id = 2 limit 2
如果我想在一个查询中从 10 只猫中获取信息,会发生什么情况
【问题讨论】:
-
无订单,请看我的查询,你能理解我
-
可以在WHERE子句中使用IN()选择多条记录吗?
-
我怎样才能为每只猫获得 2 条记录
标签: mysql sql performance join