MySQL查询(扩展二变量主键/旋转数据)

发布于 2024-10-15 02:25:16 字数 385 浏览 3 评论 0原文

在 MySQL 中,假设我有一个名为“data”的表,其中包含“x”、“y”和“value”列

data:

x y  value
A D  0.5
A E  0.8
A F  4.2
B D  3.1
C F  1.6

并假设 (x,y) 是主键。

是否有一个我可以运行的 SELECT 查询,以便输出是

X   D    E    F
A  0.5  0.8  4.2
B  3.1  n/a  n/a
C  n/a  n/a  1.6

我将知道“y”的可能值,以便可以将其硬编码到查询中(尽管如果查询更通用,我当然更喜欢它)。

谢谢。

In MySQL, suppose I have a table called 'data' with columns 'x', 'y', and 'value'

data:

x y  value
A D  0.5
A E  0.8
A F  4.2
B D  3.1
C F  1.6

And suppose (x,y) is the primary key.

Is there a SELECT query I can run such that the output is

X   D    E    F
A  0.5  0.8  4.2
B  3.1  n/a  n/a
C  n/a  n/a  1.6

I will know the possible values of 'y' so that can be hard-coded into the query (although I would of course prefer it if the query was more general).

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

怀念你的温柔 2024-10-22 02:25:16

您想要的称为“数据透视表”。

关于数据透视表以及在 MySql 中生成数据透视表的方法的详细解释可以在以下位置找到:
http://dev.mysql.com/tech-resources/articles/wizard /index.html

虽然您确实需要“自定义”SQL 来指定数据透视表的列名称,但如果您事先不知道它们,您可以使用 SQL 为您生成它们!看看文章吧!

What you want is called a "Pivot Table".

A nice explanation of Pivot tables and ways of generating them in MySql may be found at:
http://dev.mysql.com/tech-resources/articles/wizard/index.html

Though you do need "custom" SQL to specify the column names for your pivot table if you don't know them in advance you can use SQL to generate them for you! Check out the article!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文