我有两个选择查询,它们获取具有相同列名的两个表的结果。
SELECT
labels.langjrd,
labels.id,
labels.lcphrase
FROM
labels
WHERE
labels.langjrd LIKE 'FRE%'
;
和
SELECT
labels.langjrd,
labels.id,
labels.lcphrase
FROM
labels
WHERE
labels.langjrd LIKE 'ENG%'
;
当我运行查询时,我想将所有结果放入一个表中。我读到有关联合查询的信息,但是当我尝试使用联合查询时,它不起作用。我不想覆盖所有重复的数据,我只想将第二个选择结果添加到第一个选择结果的底部。
使用,UNION ALL
您可以合并两个查询的结果,如下所示:
SELECT
labels.langjrd,labels.id,labels.lcphrase
FROM
labels
WHERE
labels.langjrd LIKE 'FRE%'
UNION ALL
SELECT
labels.langjrd,labels.id,labels.lcphrase
FROM
labels
WHERE
labels.langjrd LIKE 'ENG%';
您了解了UNION
哪个做了类似的事情,但是它过滤掉了重复的结果。因此,它与相似UNION ALL
,但不相同。
但是由于您实际上是在查询同一张表中完全相同的列,因此您可以将这两个条件放在where
子句中,然后使用进行拆分or
。这样,您将获得与任一条件均匹配的所有记录。
SELECT
labels.langjrd,labels.id,labels.lcphrase
FROM
labels
WHERE
labels.langjrd LIKE 'FRE%' OR
labels.langjrd LIKE 'ENG%';
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句