sql >> Database >  >> RDS >> Mysql

MySQL concat() om kolomnamen te maken voor gebruik in een query?

Ik zei eerder dat dit niet kon, maar ik had het mis. Ik had uiteindelijk zelf zoiets nodig, dus ik keek rond en ontdekte dat server-side voorbereide statements laat je willekeurige SQL-instructies van strings bouwen en uitvoeren.

Hier is een voorbeeld dat ik zojuist heb gemaakt om het concept te bewijzen:

set @query := (
  select concat(
    "select",
      group_concat(concat("\n  1 as ", column_name) separator ','),
    "\nfrom dual")
  from information_schema.columns
  where table_name = 'columns')
;
prepare s1 from @query
;
execute s1
;
deallocate prepare s1
;


  1. Gebruikt MySQL index voor het sorteren?

  2. Hoe voeg je een prefix toe van alle tabellen in mysql

  3. Meerdere rijen samenvoegen tot één rij

  4. is het mogelijk om op afstand toegang te krijgen tot de mysql-database op gedeelde hostings?