SmartQueryTools

Cast Column Types in YAML Files Online

Change column data types in YAML files directly in your browser. Cast text to numbers, dates to timestamps, or any supported type conversion — no upload required.

How to cast Column Types in YAML files

  1. Drop your file. Every column is listed with its current type, and each one starts at Keep original.
  2. For each column you want to change, pick a target type: VARCHAR, INTEGER, BIGINT, FLOAT, DOUBLE, BOOLEAN, DATE or TIMESTAMP.
  3. Click Apply Casts. The button stays disabled until at least one column has a new type.
  4. Check the preview for new empty cells. A value that cannot be converted becomes NULL instead of stopping the run.
  5. Download the result in the same format. Column names and order stay the same.

Your file is processed locally in your browser and is never uploaded. The free limit is 50 MB per file; larger files work if your device has the memory for them.

Worked example

A property portal's listing feed arrives with loose types. Prices include "POA" (price on application), bathrooms were written as decimals, and the garage flag is free text. An analyst needs clean numbers and a true/false column before building a price model.

Input (YAML)

- listing_id: L-3301
  price: '485000'
  bathrooms: 1
  has_garage: 'yes'
- listing_id: L-3302
  price: POA
  bathrooms: 2
  has_garage: 'no'
- listing_id: L-3303
  price: '612500'
  bathrooms: 1.5
  has_garage: 'Y'
- listing_id: L-3304
  price: '349000'
  bathrooms: 2.75
  has_garage: n/a

Settings

  • listing_id: Keep original
  • price: INTEGER
  • bathrooms: INTEGER
  • has_garage: BOOLEAN

Result

listing_idpricebathroomshas_garage
L-33014850001true
L-3302NULL2false
L-33036125002true
L-33043490003NULL

"POA" is not a number, so that price becomes NULL. Casting a decimal to INTEGER rounds to the nearest whole number, so 1.5 becomes 2 and 2.75 becomes 3. That loses real information here, and DOUBLE would be the better choice for bathrooms. The BOOLEAN cast understands yes, no and Y, but "n/a" becomes NULL.

Frequently Asked Questions

What happens to values that do not fit the new type?

They become NULL. Every changed column is converted with TRY_CAST, so one bad value never stops the run. It also fails silently. Compare null counts before and after, for example with the Validate structure tool, to see how many values were lost.

Does casting a decimal to INTEGER round or truncate?

It rounds to the nearest whole number, so 2.75 becomes 3 and 1.25 becomes 1. Exact halves may round to the even neighbour, so do not rely on how 2.5 is handled. Values above 2,147,483,647 become NULL. Use BIGINT for large IDs.

Which text values become true or false with BOOLEAN?

true, false, t, f, yes, no, y, n, 1 and 0, in any letter case. Anything else, such as "on", "open" or "n/a", becomes NULL.

Related Tools