There are two tables, the first contain data and the second meta data for the first based on category.
table1
id, category1, category2, custom1, custom2, custom3...
table2
category1, category2, denom, field
Example:
table1
AAAAA, Car, Compact, Red, Automatic, 150bhp
table2
Car, Compact, Color, custom1
The ‘field’ column in table2 points to which field in table1 we have meta data for.
Now what I am looking to do is to somehow use the value of the ‘field’ column in an sql as the column.
select * from table1
where table1.category1 = 'Car'
and table1.category2 = 'Compact'
and table1.category1 = table2.category1
and table1.category2 = table2.category2
and table2.denom = 'Color'
and table1.(value of table2.field) = 'Red'
Is this possible to do in a single sql statement?
It is possible if you know the number of “custom” columns in advance.
you can replace
with