Fråga : storleksanpassa av data som gås tillbaka av en query

hur kan du finna storleksanpassa av datan som en query kommer med tillbaka:
select col1, col2….,col12 från tablea
how kan dig veta, hur många tillbaka byte av data gås av den ovannämnda queryen?

statistics io ger inte detta info.

thanks
" klar "

Svar : storleksanpassa av data som gås tillbaka av en query

Kanske något något liknande detta (detta ska inte arbete på system bordlägger, användaren bordlägger precis). Detta är från AdventureWorks tar prov db. Ta en look på den sist kolonnen i avbilda

förklara varchar @exec (max)
förklara @table sysname
förklara @schemasysname

fastställdt @table = ”anställd”,
fastställd @schema = ”HumanResources”,
VALD @exec = BYTER UT (BYT UT (BYT UT (”välj *, DataLen=@calc FRÅN [@schemaen]. [@table]”,
                 ”@calc”, (@table) dbo.GetDataLenList),
                 ”@table”, @table),
                 ”@schema”, @schema)

tryck@exec
exec (@exec)
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
SKAPA FUNGERAR [GetDataLenList] (
  @TableName SYSNAME
) RETUR VARCHAR (MAX) SOM BÖRJAR

  FÖRKLARA @COUNT INT
  FÖRKLARA @CTR   INT
  FÖRKLARA @COLNAME SYSNAME
  FÖRKLARA @SCHEMAEN  SYSNAME
  FÖRKLARA @SQL     VARCHAR (MAX)
  FÖRKLARA @SQLEXEC VARCHAR (MAX)

  FÖRKLARA ATT @COLS BORDLÄGGER (
    LEGITIMATION         INT-IDENTITET (1, 1),
    ColumnName NVARCHAR (128),
    SchemaName NVARCHAR (128)
  )
  
  MELLANLÄGG IN I @COLS 
  VÄLJ COLUMN_NAME, TABLE_SCHEMA
    FRÅN INFORMATION_SCHEMA.COLUMNS 
   VAR TABLE_NAME = @TABLENAME 

  FASTSTÄLLD @sql = '',
  VALD @COUNT = RÄKNING (*) FRÅN @COLS
  FASTSTÄLLD @ctr = 1
  STUND@CTR <> 1 BÖRJAR
       FASTSTÄLLD @sql = @sql + ”+”,
     AVSLUTA
     FASTSTÄLLD @sql = @sql + BYTER UT (”ISNULL (DATALENGTH (@@colName@@), 0)”, ”@@colName@@”, QuoteName (@colName))
    FASTSTÄLLD @ctr = @ctr + 1
  AVSLUTA
  GÅ @sql tillbaka
AVSLUTA
Andra lösningar  
 
programming4us programming4us