MySQL-从多个具有相同结构但数据不同的表中选择数据 [英] MySQL - Selecting data from multiple tables all with same structure but different data
问题描述
好吧,这是我的两难选择.我有一个数据库,其中包含约5个表,它们的数据结构完全相同.出于本地化目的,以这种方式分离了数据,并总共分割了约450万条记录.
Ok, here is my dilemma I have a database set up with about 5 tables all with the exact same data structure. The data is separated in this manner for localization purposes and to split up a total of about 4.5 million records.
在大多数情况下,只需要一张桌子就可以了.但是,有时需要两个或两个以上表中的数据,并且需要按用户定义的列对其进行排序.这就是我遇到的问题.
A majority of the time only one table is needed and all is well. However, sometimes data is needed from 2 or more of the tables and it needs to be sorted by a user defined column. This is where I am having problems.
数据列:
id, band_name, song_name, album_name, genre
MySQL声明:
SELECT * from us_music, de_music where `genre` = 'punk'
MySQL吐出此错误:
MySQL spits out this error:
#1052 - Column 'genre' in where clause is ambiguous
很明显,我做错了.有人愿意为我阐明一下吗?
Obviously, I am doing this wrong. Anyone care to shed some light on this for me?
推荐答案
I think you're looking for the UNION clause, a la
(SELECT * from us_music where `genre` = 'punk')
UNION
(SELECT * from de_music where `genre` = 'punk')
这篇关于MySQL-从多个具有相同结构但数据不同的表中选择数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!