4.3 Table and Column Properties

Key Takeaways

  • Table properties include storage mode (Import, DirectQuery, Dual) and Mark as Date Table.
  • Key column properties: Data Type, Format, Data Category, Sort By Column, Summarize By, and visibility.
  • Data Category hints map columns to map visuals (City, State/Province, Country/Region, Postal Code, Latitude, Longitude) and enable Web/Image URL behavior.
  • Sort By Column sorts one column by another (Month Name by Month Number) and requires a one-to-one match within the same table.
  • Summarize By sets a column's default aggregation; set ID and code columns to Don't Summarize to prevent accidental sums.
Last updated: June 2026

Quick Answer: Table and column properties control how data behaves in reports. Key settings: Data Category (City, Country, URL) for smart visual behavior, Sort By Column (sort Month Name by Month Number), Summarize By (default aggregation), and visibility (hide technical columns from report builders).

Table Properties

Storage Mode

Set per table in Model view:

ModeDescription
ImportData cached in memory (default, fastest)
DirectQueryQueries sent to the source at runtime
DualBehaves as Import or DirectQuery depending on context; key for composite models and aggregations

Mark as Date Table

Table Tools > Mark as Date Table > select the date column.

A valid date table must contain a Date/DateTime column with no missing values (no gaps), unique values (one row per date), and coverage of the full date range in related facts. Marking it enables proper time intelligence (YTD, SAMEPERIODLASTYEAR) and stops auto-generated hidden date tables for related columns.

FeatureMark as Date TableAuto Date/Time
VisibilityVisible, full controlHidden, auto-generated
CustomizationCustom fiscal years, hierarchiesStandard calendar only
Model SizeOne table for all datesOne hidden table per date column
Time IntelligenceFull supportLimited
RecommendationUse thisDisable globally

Column Properties

Data Type and Format

Data Type is usually set in Power Query; the Model view value affects display and DAX behavior, not the source. Format is display-only and does not change the underlying type or how DAX calculates.

FormatExampleUse For
Whole Number1,235Counts, IDs
Decimal Number1,234.50General decimals
Currency$1,234.50Revenue, prices
Percentage45.00%Rates, proportions
Date3/31/2026Dates

Data Category

Data categories give semantic hints about a column's meaning.

CategoryEffectExample
CityAuto-geocode for maps"Seattle"
State or ProvinceAuto-geocode for maps"Washington"
Country/RegionAuto-geocode for maps"United States"
Postal CodeGeographic grouping"98101"
Latitude / LongitudeMap positioning47.6062 / -122.3321
Web URLClickable links in tables"https://example.com"
Image URLDisplay images in tables"https://.../logo.png"
BarcodeMobile scanning"5901234123457"

Map visuals use geocoded columns automatically, table visuals render Web URLs as clickable links, and the mobile app can scan barcode-categorized columns.

Sort By Column

Sort one column by the values in another. The classic case: month names sort alphabetically (April, August, December) instead of calendar order. Fix it by sorting the MonthName column by MonthNumber: Select MonthName > Column Tools > Sort by Column > MonthNumber.

Requirements: the sort-by column must have a one-to-one correspondence with the sorted column, and both must be in the same table. Typical patterns are MonthName by MonthNumber and DayName by DayNumber. A common error, "can't sort by a column with multiple values per sorted value," means the one-to-one rule is violated.

Summarize By

Sets the default aggregation when a column is dragged into a visual.

SettingBest For
SumRevenue, Quantity (numeric default)
AverageRatings, Scores
Min / MaxStart / end dates
Count / Count (Distinct)Items / unique customers
Don't Summarize (None)ProductID, OrderNumber, ZipCode

Best Practice: Set Summarize By to Don't Summarize for ID, key, and code columns so report builders cannot accidentally sum them.

Visibility and Display Folders

Hide foreign keys in facts, technical columns (RowVersion, ETLTimestamp), and intermediate columns used only by measures. Do not hide dimension attributes used for filtering, measure columns shown in visuals, or date-hierarchy columns. Use display folders (Properties pane) to group columns and measures into logical folders such as "Sales Measures" and "Customer Attributes."

On the Exam

The PL-300 tests using Sort By Column to fix month ordering, setting Data Category for geographic columns, the requirements for marking a date table, setting Summarize By to prevent accidental aggregation of IDs, and hiding foreign-key and technical columns.

Why These Properties Matter for Self-Service

Table and column properties are how a modeler shapes a trustworthy self-service experience. A report builder who never opens Power Query relies entirely on the metadata you set: the friendly names, the default aggregation, the format string, and the geographic hints. Getting these right means a business user can drag fields onto a canvas and get a correct, well-formatted visual without writing a single formula, which is exactly the outcome the PL-300 "prepare the data" and "model the data" objectives reward.

Dual Storage Mode in Depth

Dual is the most nuanced storage mode and a common exam target. A Dual table behaves as Import when a query can be answered entirely in memory and as DirectQuery when a query must reach the source, typically because it joins to a DirectQuery fact. Dual is the recommended mode for shared dimensions in composite models and is essential for user-defined aggregations, where a small Import aggregation table sits over a large DirectQuery detail table.

Setting a shared dimension to Import instead of Dual would force the engine to materialize and join in memory for DirectQuery paths, hurting performance; setting it to DirectQuery would slow purely in-memory queries. Dual lets the engine pick per query.

Format String vs. Data Type, a Frequent Trap

Learners often confuse the Format property with the Data Type. Changing the format of a column from General to Currency only changes how the value is displayed, $1,234.50 instead of 1234.5; it does not alter the stored number or how DAX computes with it. To genuinely change the type (text to whole number, for instance) you set the Data Type, ideally back in Power Query so the change folds to the source. On the exam, a question that asks how a number should appear points to Format; a question about how it should be stored or calculated points to Data Type.

Test Your Knowledge

Month names appear in alphabetical order in a chart (April, August, December...) instead of calendar order. How do you fix this?

A
B
C
D
Test Your Knowledge

You have a City column that you want to use in a map visual, but the map is not recognizing the cities. What should you do?

A
B
C
D
Test Your Knowledge

What are the requirements for a table to be marked as a Date Table in Power BI?

A
B
C
D
Test Your Knowledge

Why set the Summarize By property of an OrderNumber column to "Don't Summarize"?

A
B
C
D