Bug description

If you have a table with numeric columns and all their rows are empty (NULL), then the Customize option for the Table and Interactive table charts categorizes them as string columns.

Reproduction

  1. Create a table with at least one numeric column, and insert null values into it.
  2. Create a dataset with that table.
  3. Edit the dataset and create a metric using that numeric column
  4. Create an Interactive table chart or a Table chart with that dataset. Move the created metric to the metrics section and add one column to the dimension section.
  5. Click on the Update chart button and then on the Customize tab

Expected result

In the customize tab, you see the metric created categorized as numeric (#)

Actual result

The metric is categorized as string (abc)

Screenshots/recordings

No response

Superset version

master / latest-dev

Python version

3.11

Node version

18 or greater

Browser

Firefox

Additional context

No response

Checklist

  • [x] I have searched Superset docs and Slack and didn't find a solution to my problem.
  • [x] I have searched the GitHub issue tracker and didn't find a similar bug report.
  • [x] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.