Advertisement
Guest User

Untitled

a guest
Jun 24th, 2019
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.98 KB | None | 0 0
  1. conn = pyodbc.connect(conn_str)
  2. sql = """\
  3. DECLARE @cols AS NVARCHAR(MAX),
  4.    @query  AS NVARCHAR(MAX)
  5. select @cols = STUFF((SELECT ',' + QUOTENAME(PatternID)
  6.                    from loglist
  7.                    group by PatternID
  8.                    order by PatternID
  9.            FOR XML PATH(''), TYPE
  10.            ).value('.', 'NVARCHAR(MAX)')
  11.        ,1,1,'')
  12.  
  13. set @query = 'SELECT FileName,' + @cols + ' from
  14.             (
  15.                select FileName, PatternID, Found
  16.                from loglist
  17.            ) x
  18.            pivot
  19.            (
  20.  
  21.                sum(Found)
  22.                for PatternID in (' + @cols + ')
  23.            ) p '
  24.  
  25. execute(@query);
  26. """
  27. df = pd.read_sql_query(sql, conn)
  28. print(df)
  29. #   FileName  pat1  pat2  pat3  pat4  pat5  pat6
  30. # 0        e   1.0   1.0   1.0   NaN   NaN   NaN
  31. # 1        f   1.0   1.0   1.0   NaN   NaN   NaN
  32. # 2        q   1.0   1.0   1.0   NaN   NaN   NaN
  33. # 3        s   NaN   NaN   NaN   0.0   0.0   0.0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement