【发布时间】:2012-11-06 16:45:50
【问题描述】:
我有两个表,其中包含不同操作的日志信息。我想从两个记录表中选择信息并显示它。我无法修改应用程序,因此无法修改表结构。假设我想要 30 条记录,我想我可以编写某种连接查询,它只会按时间顺序返回每个表的 ID。然后我可以简单地运行两个单独的查询,从各个表中选择这些 ID。我不知道该怎么做,或者你是否能做到这一点,我有点不知所措。任何人都可以帮忙吗?如果有更清洁的解决方案,我也很乐意听到,我正在使用 PHP。
示例数据:
魔法选择? FROM table1 MAGIC JOIN table2 MAGICALLY ORDER BY date DESC LIMIT 3
表 1
|------|-------|------------|
| id | date | other data |
|------|-------|------------|
| 1 | 8 | ... |
| 2 | 5 | ... |
| 3 | 3 | ... |
|------|-------|------------|
表 2
|------|-------|------------|
| id | date | other data |
|------|-------|------------|
| 1 | 6 | ... |
| 2 | 4 | ... |
| 3 | 12 | ... |
|------|-------|------------|
输出
|-----------|-----------|
| table1_id | table2_id |
|-----------|-----------|
| NULL | 3 |
| 1 | NULL |
| NULL | 1 |
|-----------|-----------|
提前致谢。
【问题讨论】:
-
有了这么多魔法,您应该不需要我们的帮助。
-
这些表有什么关联吗?从您的问题中不清楚,但这很重要。
-
@MichaelBerkowski 不。这有点痛苦,我希望我可以修改应用程序以使其更加理智,但不幸的是我不能。
-
@njk 这会是一个精彩的愚人节 RFC