如何从多个表中选择所有数据? 我试试
`"SELECT * FROM `table1`, `table2`"`
,
但结果对我来说是不可理解的。它只返回table1
的某些行,并且是table2
的所有数据的3倍。我有一个同样的问题here,但是不明白答案。你能帮帮我吗?提前谢谢。
当我尝试
时(SELECT * FROM `table1`) UNION (SELECT * FROM `table2`)
它返回 #1222 - 使用的SELECT语句具有不同的列数
答案 0 :(得分:2)
通过在2个表之间选择“,”并且没有WHERE子句,您正在对2个表进行隐式cross join(2个表之间的所有行组合)。这可能不是你想要的。如其他答案所述,见UNION。
答案 1 :(得分:1)
使用UNION SELECT构造
答案 2 :(得分:1)
您希望如何显示数据?这两个表都是相同的模式吗?如果是这样,你可以使用UNION运算符。
答案 3 :(得分:0)
如果您只是试图显示来自许多表的数据并且数据之间没有关系,则必须编程逻辑而不是数据库逻辑。
show tables(SQL命令)
foreach结果(您选择的编程语言)
select * from tablename(SQL command)