Hi, Tom! To sum this thread up: * clunky syntax is unfortunate, but that's what SQL is, that'll probably stay that way :( * A function to query a type of a value for a particular dynamic column, COLUMN_GET_SQL() as you call it, that should be easy to do. I've just created an issue for that: https://mariadb.atlassian.net/browse/MDEV-7535 feel free to add your comments there. * indexes for dynamic columns (even if not "as important"). This is already existing MDEV-6017, but it's a much larger task than COLUMN_GET_SQL. * Input JSON directly - an existing task too, MDEV-7524 * And arrays were mentioned too, it's MDEV-6632 And while I'm not promising anything, I think that MDEV-7535 (COLUMN_GET_SQL or something similar) has a good chance of being implemented in 10.2. Regards, Sergei