MySQL查询帮助SELECT JOIN

标签 mysql select join

我有一些表格。在每个表中都有一个字段 id(int)。每个表中可以有多个相同id的记录。例如:

id1 val1 id1 val2 id1 val3
id1 val4 id1 val5 id1 val6

我需要女巫给我的选择查询

val1 val2 val3
val4 val5 val6

我试过了

SELECT * FROM  table1
INNER JOIN table2 ON table1.ban_id = table2.ban_id
INNER JOIN table3 ON table1.ban_id = table3.ban_id
INNER JOIN table4 ON table1.ban_id = table4.ban_id
INNER JOIN table5 ON table1.ban_id = table5.ban_id
INNER JOIN table6 ON table1.ban_id = table6.ban_id

据我所知,它为我提供了所有可能的值(value)观排列方式。

更新1
让我给你更多信息。我正在编写一个应用程序,用户可能会以多种方式被禁止,例如通过 nick ip guid(一些类似 guid 的 id)
也在数据库中存储了此禁令的原因。所以会出现这样的情况,当有一个记录带有 guid ip nick 但多种原因或多个 nick witch 响应相同的 id。
http://pastebin.com/HQs4XxDm - 这是表的结构

最佳答案

你现在得到了什么?如果您提供一些调试信息,会更容易提供帮助。

我想您对不明确的列名有疑问。尝试

SELECT 
`table1`.`id1` AS `t1_id1`, 
`table2`.`id1` AS `t2_id1`, 
`table3`.`id1` AS `t3_id1`, 
`table4`.`id1` AS `t4_id1`, 
`table5`.`id1` AS `t5_id1`, 
`table6`.`id1` AS `t6_id1`
FROM table1 
INNER JOIN table2 ON table1.ban_id=table2.ban_id
INNER JOIN table3 ON table1.ban_id=table3.ban_id
INNER JOIN table4 ON table1.ban_id=table4.ban_id
INNER JOIN table5 ON table1.ban_id=table5.ban_id
INNER JOIN table6 ON table1.ban_id=table6.ban_id

关于MySQL查询帮助SELECT JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9044545/

相关文章:

javascript - JQuery 从 DualListBox 中选择所有选项值

c# - 工作台的连接表和链接表之间有区别还是相同?

MySQL join 以使用顺序/优先级获取单行

sql - 在 Postgres 中嵌套或引用查询

java - 使用 Hibernate 在外键字段中插入空值

python - 为什么找不到Dockerfile?

mysql - 如何在mysql中找到每天最好的球员

MySQL - 嵌入式选择 - 如何将行放入列中?

MySQL 索引大表的性能

MYSQL - 选择具有多个 OR 条件的查询很慢