Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当一列的值必须根据其id分配给单个列时,如何在sql中设置值_Sql_Oracle - Fatal编程技术网

当一列的值必须根据其id分配给单个列时,如何在sql中设置值

当一列的值必须根据其id分配给单个列时,如何在sql中设置值,sql,oracle,Sql,Oracle,我在一列中有基于id的数据,我必须确定值并在其他列中分配它。我怎么做?这是我的问题的例子 我想要的结果是这样的 在您的示例中找不到任何测量值 根据您的输入数据,这将是您预期输出的解决方案 SELECT ID, MAX(CASE WHEN code = '3148' THEN '3148' ELSE ' ' END) AS Height, MAX(CASE WHEN code = '3142' THEN '3142' ELSE ' ' END) AS Width, MAX

我在一列中有基于id的数据,我必须确定值并在其他列中分配它。我怎么做?这是我的问题的例子

我想要的结果是这样的


在您的示例中找不到任何测量值

根据您的输入数据,这将是您预期输出的解决方案

SELECT ID,
    MAX(CASE WHEN code = '3148' THEN '3148' ELSE ' ' END) AS Height,
    MAX(CASE WHEN code = '3142' THEN '3142' ELSE ' ' END) AS Width,
    MAX(CASE WHEN code = '3155' THEN '3155' ELSE ' ' END) AS Thickness,
    MAX(CASE WHEN code = '3241' THEN '3241' ELSE ' ' END) AS Spine,
    MAX(CASE WHEN code = '4431' THEN '4431' ELSE ' ' END) AS Weight
FROM Your_table
GROUP BY Id

您可以发布预期的输出吗?您使用的是哪种dbms?(删除未涉及的产品的标记。)MySQL SQL Server Oracle。你到底在用什么?请向我们展示您的尝试,并解释为什么它们不起作用。同样,数据也不能很好地作为图像接收,因为它对您寻求帮助的人毫无用处。请以
文本
的形式提供数据,或者更好地以DDL和DML语句的形式提供数据。您如何确定哪个值是哪个度量值,我在您的数据中看不到任何表示它的内容。“我正在使用oracle数据库。”然后标记该值,并且仅标记该值。为什么要标记SQL Server和MySQL,而不是您正在使用的。。?