问题描述
好的,这是我的困境我有一个数据库,其中设置了大约 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.
大多数时候只需要一张桌子,一切都很好.但是,有时需要来自 2 个或更多表的数据,并且需要按用户定义的列对其进行排序.这就是我遇到问题的地方.
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?
推荐答案
我认为您正在寻找 UNION 子句,一拉
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 - 从具有相同结构但不同数据的多个表中选择数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!