物品表:
| Item | Qnty | ProdSched |
| a | 1 | 1 |
| b | 2 | 1 |
| c | 3 | 1 |
| a | 4 | 2 |
| b | 5 | 2 |
| c | 6 | 2 |
Run Code Online (Sandbox Code Playgroud)
有没有办法可以使用SQL输出它SELECT?
| Item | ProdSched(1)(Qnty) | ProdSched(2)(Qnty) |
| a | 1 | 4 |
| b | 2 | 5 |
| c | 3 | 6 …Run Code Online (Sandbox Code Playgroud) 我需要使用以下结构在SQL Server中透视表:
CREATE TABLE table1 (
ColumnNumber int,
RowNumber int,
CellData nvarchar(50)
)
INSERT INTO table1 VALUES
(1, 1, 'Orange'),
(2, 1, 'Apple'),
(3, 1, 'Banana'),
(1, 2, 'Grape'),
(2, 2, 'Corn'),
(3, 2, 'Lemon'),
(1, 3, 'Tomato'),
(2, 3, 'Lettuce'),
(3, 3, 'Onion')
Run Code Online (Sandbox Code Playgroud)
我需要结果表看起来像这样:

因此,ColumnNumber行中的单元格现在是结果表的列名称.最难的部分是不同列数的数量是可变的(所以现在,我们有3个列号,但明天可能有6或10个).
我一直在看PIVOT函数,但是所有的例子都包括a GROUP BY,而且,正如你在这里看到的,我需要一些更像"transpose"excel函数的东西.
谢谢 !!
我有这样的查询:
SELECT ItemMaster.ERPItemCode, DistributorStock.Qty
FROM DistributorStock INNER JOIN
ItemMaster ON DistributorStock.ItemMasterId = ItemMaster.Id
WHERE (DistributorStock.DistributionCenterId = 2)
Run Code Online (Sandbox Code Playgroud)
结果如下:

我想将查询更改为以Item Code列显示,而不是以行显示.我怎样才能做到这一点?
在我的例子中,我有老师,学生和课程.我想概述哪个课程由谁在本课程的哪些房间和所有学生中进行教学.我有基本的设置runnig(带有一些手动编码的语句).但直到现在我没有运气准备正确的STUFF声明:
@colsStudents以便我可以将名称放在列标题中,并删除混乱ID(添加100)的需要,以避免在rooms.id和students.id之间发生冲突@colsRooms这样我就不必为房间名称加油EXEC sp_executesql @sql;您可以找到所有sql语句来创建此架构和最后的数据.

我想转动列RoomName,StudentName并使用列值作为新列名称.所有用于创建表和数据的SQL语句都在最后.
Id | Course | Teacher | A3 | E7 | Penny | Cooper | Koothrap. | Amy
---+--------+---------+----+----+-------+--------+-----------+-----+
1 | C# 1 | Marc G. | | 1 | 1 | | |
2 | C# 2 | Sam S. | | 1 | 1 | | 1 |
3 | C# 3 | John S. | 1 | | | …Run Code Online (Sandbox Code Playgroud) 我有一个表,其中包含Date,Identifier和Price等列
| Identifier | Date | Price |
|------------|----------|-------|
| 693477AA|1990/10/31| 100|
| 353477ZB|1991/08/31| 101|
| 123457ZB|1992/08/31| 105|
Run Code Online (Sandbox Code Playgroud)
我正在使用pandas read_sql函数从SQL Server数据库中获取数据.使用SQL或pandas DataFrame功能我需要将数据转换为以下pandas DataFrame格式.
693477AA 353477ZB 123457ZB
Date
1988-1-1 NaN NaN 99.41
1988-1-2 100.54 NaN 98.11
1988-1-3 99.45 NaN NaN
Run Code Online (Sandbox Code Playgroud)
因此,表中的每个DISTINCT日期都有一个(可能是空的)价格条目.对于满足条件的标识符集.
现在我让它使用for循环,
data = []
identifiers = "SELECT DISTINCT Identifier FROM TABLE WHERE [Condition]"
for id in identifiers:
data.append("SELECT Date, Price FROM TABLE WHERE Identifier=[id] ORDER BY DATE")
pandas.concat(data, axis=1)
Run Code Online (Sandbox Code Playgroud)
然而,这仅适用于非常严格的[条件],因为该表非常大(> 3M行).
如何实现SQL,DataFrame操作或两者的组合以实现所需的格式?
谢谢.
我有一个场景,我想在分组数据后计算记录.(实际方案包含多个表.)
create table tblXYZ
(
id int,
Age int,
Typ char
)
Run Code Online (Sandbox Code Playgroud)
表包含此数据:
| ID | Age | Typ
------------------
| 1 | 20 | A
| 2 | 20 | A
| 3 | 21 | B
| 4 | 22 | B
| 5 | 22 | A
| 6 | 23 | B
| 7 | 23 | A
| 8 | 23 | A
| 9 | 25 | B
| 10 | 25 | B …Run Code Online (Sandbox Code Playgroud)