Table To Table (Conversion)


Exports the rows of a table, table view, feature layer, feature class, or raster with attribute table to a new geodatabase, .csv, .txt, or .dbf table.


  • This tool supports the following table formats as input:

    • Geodatabase
    • dBASE (.dbf)
    • Comma-separated values (.csv or .txt)
    • Microsoft Excel worksheets (.xls or .xlsx)
    • In-memory table views

    For file input (.csv or .txt), the first row of the input file is used as the field names on the output table. Field names cannot contain spaces or special characters (such as $ or *), and you will receive an error if the first row of the input file contains spaces or special characters.

  • All fields in the output dataset and the contents of those fields can be controlled using the Field map.

    • To change the field order, select a field name and drag it to the preferred position.
    • The default data type of an output field is the same as the data type of the first input field (of that name) it encounters. You can manually change the data type at any time to any other valid data type.
    • The following merge rules are available: first, last, join, sum, mean, median, mode, minimum, maximum, standard deviation, and count.
    • When using the Join merge rule, you can specify a delimiter such as a space, comma, period, dash, and so on. To use a space, make sure the pointer is at the start of the input box and press the Spacebar once.
    • You can specify the start and end positions of text fields using the format option.
    • Do not perform standard deviation on a single input because values cannot be divided by zero, so standard deviation is not a valid option for single inputs.

    Learn more about mapping fields in scripts

  • When converting geodatabase data that has subtypes or domains to a dBASE table, both the subtype and domain codes and descriptions can be included in the output. Use the Transfer field domain descriptions geoprocessing environment to control this behavior. By default, only domain and subtype codes will be included in the output, not descriptions.


    Conversion to a dBASE (.dbf) table with subtype and domain descriptions may take more time (slower performance) than without descriptions. If you do not require the subtype and domain descriptions in your dBASE (.dbf) table output, it is recommended that you use the unchecked (False or NOT_TRANSFER_DOMAINS in scripting) default behavior of the Transfer field domain descriptions environment to achieve best performance.


arcpy.conversion.TableToTable(in_rows, out_path, out_name, {where_clause}, {field_mapping}, {config_keyword})
ParameterExplanationData Type

The input table to be exported to a new table.

Table View; Raster Layer

The destination where the output table will be written.


The name of the output table.

If the output location is a folder, include an extension such as .csv, .txt, or .dbf to export the table to that format. If the output location is a geodatabase, do not specify an extension.


An SQL expression used to select a subset of records. Learn more about SQL query expressions

SQL Expression

Controls which attribute fields will be in the output. By default, all fields from the inputs will be included.

Fields can be added, deleted, renamed, and reordered, and you can change their properties.

Merge rules allow you to specify how values from two or more input fields are merged or combined into a single output value. There are several merge rules you can use to determine how the output field will be populated with values.

  • First—Use the input fields' first value.
  • Last—Use the input fields' last value.
  • Join—Concatenate (join) the input field values.
  • Sum—Calculate the total of the input field values.
  • Mean—Calculate the mean (average) of the input field values.
  • Median—Calculate the median (middle) of the input field values.
  • Mode—Use the value with the highest frequency.
  • Min—Use the minimum value of all the input field values.
  • Max—Use the maximum value of all the input field values.
  • Standard deviation—Use the standard deviation classification method on all the input field values.
  • Count—Find the number of records included in the calculation.

In Python, you can use the FieldMappings class to define this parameter.

Field Mappings

Specifies the default storage parameters (configurations) for geodatabases in a relational database management system (RDBMS). This setting is applicable only when using enterprise geodatabase tables.

Configuration keywords are set by the database administrator.

Learn more about configuration keywords


Derived Output

NameExplanationData Type

The output table.


Code sample

TableToTable example 1 (Python window)

The following Python window script demonstrates how to use the TableToTable function in immediate mode.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.TableToTable_conversion("vegtable.dbf", "C:/output/output.gdb", "vegtable")
TableToTable example 2 (stand-alone script)

The following stand-alone script demonstrates how to use the TableToTable function.

# Description: Use TableToTable with an expression to create a subset
#  of the original table.
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Set local variables
inTable = "vegtable.dbf"
outLocation = "C:/output/output.gdb"
outTable = "estuarine"

# Set the expression, with help from the AddFieldDelimiters function, to select 
# the appropriate field delimiters for the data type
expression = arcpy.AddFieldDelimiters(arcpy.env.workspace, "VEG_TYPE") + " = 'Estuarine'"
# Execute TableToTable
arcpy.TableToTable_conversion(inTable, outLocation, outTable, expression)

Licensing information

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

Related topics