Excel,SQL – 将select标题行更改为列,并插入每列的值
我希望有人能帮帮忙。 我有一个excel文件,上面有几百个项目,显示样式的颜色/大小和数量级别。 但我需要采取相应的标题大小,并与样式和颜色以及它的数量级别相匹配。 然后将其格式化为每行, 然后复制与每列对应的样式,颜色,长度和价格。 我有Excel和SQL,如果一个更容易与另一个工作。
所以基本上拿这个:
+--------+----------+--------+-------+---------+--------+--------+--------+--------+--------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+ | STYLE# | COLOR | LENGTH | Price | Size 00 | Size 0 | Size 2 | Size 4 | Size 6 | Size 8 | Size 10 | Size 12 | Size 14 | Size 16 | Size 18 | Size 20 | Size 22 | Size 24 | Size 26 | Size 28 | Size 30 | Size 32 | +--------+----------+--------+-------+---------+--------+--------+--------+--------+--------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+ | 710 | PURPLE | RL | 199 | 0 | 0 | 0 | 2 | 5 | 5 | 5 | 4 | 4 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 710 | DP CORAL | RL | 199 | 0 | 0 | 2 | 0 | 1 | 2 | 1 | 3 | 1 | 3 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 720 | RED | RL | 225 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 720 | NAVY | RL | 225 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | +--------+----------+--------+-------+---------+--------+--------+--------+--------+--------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+
把它变成这样:
+--------+----------+---------+-----+--------+-------+ | STYLE# | COLOR | Size | QTY | LENGTH | Price | +--------+----------+---------+-----+--------+-------+ | 710 | PURPLE | Size 00 | 0 | RL | 199 | | 710 | PURPLE | Size 0 | 0 | RL | 199 | | 710 | PURPLE | Size 2 | 0 | RL | 199 | | 710 | PURPLE | Size 4 | 2 | RL | 199 | | 710 | PURPLE | Size 6 | 5 | RL | 199 | | 710 | PURPLE | Size 8 | 5 | RL | 199 | | 710 | PURPLE | Size 10 | 5 | RL | 199 | | 710 | PURPLE | Size 12 | 4 | RL | 199 | | 710 | PURPLE | Size 14 | 4 | RL | 199 | | 710 | PURPLE | Size 16 | 3 | RL | 199 | | 710 | PURPLE | Size 18 | 0 | RL | 199 | | 710 | PURPLE | Size 20 | 0 | RL | 199 | | 710 | PURPLE | Size 22 | 0 | RL | 199 | | 710 | PURPLE | Size 24 | 0 | RL | 199 | | 710 | PURPLE | Size 26 | 0 | RL | 199 | | 710 | PURPLE | Size 28 | 0 | RL | 199 | | 710 | PURPLE | Size 30 | 0 | RL | 199 | | 710 | PURPLE | Size 32 | 0 | RL | 199 | | 710 | DP CORAL | Size 00 | 0 | RL | 199 | | 710 | DP CORAL | Size 0 | 0 | RL | 199 | | 710 | DP CORAL | Size 2 | 2 | RL | 199 | | 710 | DP CORAL | Size 4 | 0 | RL | 199 | | 710 | DP CORAL | Size 6 | 1 | RL | 199 | | 710 | DP CORAL | Size 8 | 2 | RL | 199 | | 710 | DP CORAL | Size 10 | 1 | RL | 199 | | 710 | DP CORAL | Size 12 | 3 | RL | 199 | | 710 | DP CORAL | Size 14 | 1 | RL | 199 | | 710 | DP CORAL | Size 16 | 3 | RL | 199 | | 710 | DP CORAL | Size 18 | 1 | RL | 199 | | 710 | DP CORAL | Size 20 | 0 | RL | 199 | | 710 | DP CORAL | Size 22 | 0 | RL | 199 | | 710 | DP CORAL | Size 24 | 0 | RL | 199 | | 710 | DP CORAL | Size 26 | 0 | RL | 199 | | 710 | DP CORAL | Size 28 | 0 | RL | 199 | | 710 | DP CORAL | Size 30 | 0 | RL | 199 | | 710 | DP CORAL | Size 32 | 0 | RL | 199 | | 710 | DP CORAL | Size 00 | 0 | RL | 199 | | 720 | RED | Size 0 | 0 | RL | 225 | | 720 | RED | Size 2 | 1 | RL | 225 | | 720 | RED | Size 4 | 0 | RL | 225 | | 720 | RED | Size 6 | 0 | RL | 225 | | 720 | RED | Size 8 | 0 | RL | 225 | | 720 | RED | Size 10 | 1 | RL | 225 | | 720 | RED | Size 12 | 0 | RL | 225 | | 720 | RED | Size 14 | 0 | RL | 225 | | 720 | RED | Size 16 | 0 | RL | 225 | | 720 | RED | Size 18 | 0 | RL | 225 | | 720 | RED | Size 20 | 0 | RL | 225 | | 720 | RED | Size 22 | 0 | RL | 225 | | 720 | RED | Size 24 | 0 | RL | 225 | | 720 | RED | Size 26 | 0 | RL | 225 | | 720 | RED | Size 28 | 0 | RL | 225 | | 720 | RED | Size 30 | 0 | RL | 225 | | 720 | RED | Size 32 | 0 | RL | 225 | | 720 | NAVY | Size 00 | 0 | RL | 225 | | 720 | NAVY | Size 0 | 0 | RL | 225 | | 720 | NAVY | Size 2 | 0 | RL | 225 | | 720 | NAVY | Size 4 | 1 | RL | 225 | | 720 | NAVY | Size 6 | 0 | RL | 225 | | 720 | NAVY | Size 8 | 1 | RL | 225 | | 720 | NAVY | Size 10 | 2 | RL | 225 | | 720 | NAVY | Size 12 | 0 | RL | 225 | | 720 | NAVY | Size 14 | 0 | RL | 225 | | 720 | NAVY | Size 16 | 0 | RL | 225 | | 720 | NAVY | Size 18 | 0 | RL | 225 | | 720 | NAVY | Size 20 | 0 | RL | 225 | | 720 | NAVY | Size 22 | 0 | RL | 225 | | 720 | NAVY | Size 24 | 0 | RL | 225 | | 720 | NAVY | Size 26 | 0 | RL | 225 | | 720 | NAVY | Size 28 | 0 | RL | 225 | | 720 | NAVY | Size 30 | 0 | RL | 225 | | 720 | NAVY | Size 32 | 0 | RL | 225 | +--------+----------+---------+-----+--------+-------+
任何帮助,将不胜感激。
在SQL中,你可以做这样的事情,我想(对不起,我有点生疏)..
SELECT style, color, size, qty, length price, FROM table_name ORDER BY style DESC, color, size DESC, qty DESC, length, price;
在Excel中你可以做到这一步(我认为是最快的方式):
- select你的数据成为行
- 复制该数据
- 右键点击
- select粘贴特殊,你select转置
在SQL Server中,您可以使用关键字Pivot和Unpivot这个链接可以帮助你:
在SQL Server中转置
我能够通过使用excel和join颜色,价格,然后使用分隔每个值的pipe道分隔符将相应的大小添加到每个qty级别来弄清楚我需要什么。 然后垂直调换,然后在excel中使用文本列function将所有东西分开。