Kolomnamen achterhalen (MySQL)
Versie door Jeroen Strompf (overleg | bijdragen) op 11 mei 2016 om 13:05
Kolomnamen achterhalen is simpel
In den beginne:
select column_name from information_schema.columns where table_name="tabelnaam" and table_schema="databasenaam";
Ik snap trouwens niet waar and table_schema="databasenaam"
voor nodig is, want dit werkt ook:
select column_name from information_schema.columns where table_name="tabelnaam";
Het resultaat kan uiteraard ook naar een tabel worden weggeschreven, in dit geval een tijdelijke tabel:
drop temporary table if exists kolomnaam_tmp create temporary table kolomnaam_tmp select column_name from information_schema.columns where table_name="tabelnaam";
Of uitvoeren als één string - inclusief voorbeeld-output:
select group_concat(column_name) from information_schema.columns where table_name="amazon_de_tmp"; item_sku,external_product_id,external_product_id_type,asin,item_name_de,manufacturer,feed_product_type, brand_name,part_number,description_de,update_delete,standard_price_de,quantity,fulfillment_latency, condition_type,number_of_items,website_shipping_weight,website_shipping_weight_unit_of_measure, item_length,item_width,item_height,item_dimensions_unit_of_measure,item_weight, item_weight_unit_of_measure,recommended_browse_nodes,generic_keywords,bullet_point1,bullet_point2, bullet_point3,bullet_point4,bullet_point5,target_audience_keywords,main_image_url,other_image_url1, package_height,package_height_unit_of_measure,package_width,package_width_unit_of_measure,package_length, package_length_unit_of_measure,package_weight,package_weight_unit_of_measure,color_name,color_map, material_type,specific_uses_for_product,item_name,description,standard_price
Kolomnamen naar één record wegschrijven
Problemen, problemen
Als ik Amazon-sjablonen met productdata aan het vullen ben, moet ik de namen van de kolommen in de eerste regel vermelden. Oftewel:
- Hoe plaats ik die kolomnamen in één record, met de juiste waarde in de juiste kolom?
- Hoe kun je überhaupt in SQL een record dat is opgeslagen in een delimited string in een record invoegen???