【发布时间】:2014-09-10 06:16:23
【问题描述】:
我的 MySQL 技能非常基础,所以我需要(如果可能的话)是一个 SELECT 语句,它从 中的 不同 行中选择 不同 列同一张表。大多数 Google 提出的方法是组合不同的表或从不同的行中选择相同的列。
表格
id | c1 | c2 | c3 | c4 | c5 | c6 | c7
-----------------------------------------------------
1 | THIS | THIS | THIS | a | a | a | a
2 | a | a | a | a | THIS | THIS | a
我想从第 1 行中选择列 c1、c2、c3 并从第 2 行中选择 c5、c6。列名和 ID 号是已知的。 p>
我可以触发两个查询并合并数据:
SELECT c1,c2,c3 FROM table WHERE id=1
SELECT c5,c6 FROM table WHERE id=2
或者我可以同时从两行中取出所有列,然后过滤掉我需要的数据
SELECT c1,c2,c3,c5,c6 FROM table WHERE id=1 OR id=2
我的问题:是否有 SELECT 语句将两者结合起来,以便我在一个查询中获得组合结果?
我发现UNION 可以工作,但只有在两个选择语句中选择的列数相同时才有效。在这种情况下,不是。
任何帮助将不胜感激。
[编辑]请看下面我的回答。
【问题讨论】:
标签: mysql