0

因此,当我查询它们时,我试图将 3 个表加入 1 列。

这三个表是

investigators.name, ancientones.name, monsters.name.

我用来回调所有名字的查询是

SELECT investigators.name ,ancientones.name ,monsters.name FROM investigators, ancientones, monsters WHERE ((investigators.name LIKE'a%') OR (ancientones.name LIKE'a%')OR (monsters.name LIKE'a%'))

但这返回的是 3 个表行,其“名称”具有表 1、2 和 3 中的值。我希望所有值都在一个列中,但我没有那么多 SQL 经验。

4

2 回答 2

1

您需要使用 UNION (或 UNION ALL 来保留重复项)

SELECT name
FROM investigators
WHERE name like 'a%'
UNION
SELECT name 
FROM anientones
WHERE name like 'a%'
UNION
SELECT name
FROM monsters
WHERE name like 'a%'
于 2013-05-30T16:00:00.167 回答
0

尝试在列名之间使用“+”

SELECT investigators.name + ' ' + ancientones.name + ' ' + monsters.name FROM investigators, ancientones, monsters WHERE ((investigators.name LIKE'a%') OR (ancientones.name LIKE'a%')OR (monsters.name LIKE'a%'))
于 2013-05-30T16:01:27.383 回答