SQL 查询 - 要列和更新的行
Posted
技术标签:
【中文标题】SQL 查询 - 要列和更新的行【英文标题】:SQL QUERY - ROWS TO COLUMN AND UPDATE 【发布时间】:2020-10-08 15:03:32 【问题描述】:大家好,
1/ 我想做一个 sql 查询,将结果从行转换为列,如图所示。有可能吗?
2/ 如何用第一个表更新第二个表?
【问题讨论】:
这能回答你的问题吗? mysql - turn table into different table 如果您有静态列计数,请查看重复项,如果计数是动态的,您必须为此使用 INFORMATION SCHEMA.columns 并对其进行编程 旋转你的显示器 【参考方案1】:您可以在查询中使用
select 'EH545WL' as name, EH545WL as value from car union select 'FJ281TJ' as name, FJ281TJ as value from car;
如果你使用这个查询,你可以得到你想要的结果。 谢谢
【讨论】:
【参考方案2】:您可以通过多种方式转换此数据。
创建表:
CREATE TABLE yourTable([EH545WL] varchar(10), [FJ281TJ] varchar(10));
INSERT INTO yourTable
VALUES
(0,0);
反透视表:
SELECT ID,Value
FROM yourTable
UNPIVOT (value for ID in ([EH545WL],[FJ281TJ])) up
【讨论】:
好的,非常感谢!还有一个问题是如何用第一个表更新第二个表? @JulieTarnaud 您可以做的一件事是在获得所需的输出后,删除第一个表。如果它对您有用,请投票/接受答案。 我不明白你的意思。因为我需要第一个表来更新第二个,但我不知道如何实现更新 @JulieTarnaud 请查看更新后的 sql 代码,该代码可让您在 unpivot 模式下创建表和更新同一个表。以上是关于SQL 查询 - 要列和更新的行的主要内容,如果未能解决你的问题,请参考以下文章
将 Excel 数据添加到 Access 的 SQL 更新查询
通过 * 选择所有列和在 SQL 查询中指定所有列名来检索数据有啥区别? [复制]