Nee, SQL biedt u geen syntaxis om zo'n selectie uit te voeren.
Wat u kunt doen is MySQL vragen om een lijst met kolomnamen genereer eerst de SQL-query op basis van die informatie.
SELECT column_name
FROM information_schema.columns
WHERE table_name = 'your_table'
AND column_name LIKE 'word%'
laten we u de kolomnamen selecteren. Dan kun je in Python het volgende doen:
"SELECT * FROM your_table WHERE " + ' '.join(['%s = 1' % name for name in columns])
In plaats van stringconcatenatie te gebruiken, raad ik aan om SQLAlchemy te gebruiken in plaats daarvan om de SQL-generatie voor u te doen.
Als u echter alleen het aantal kolommen beperkt, is het helemaal niet nodig om een dergelijke dynamische query uit te voeren. Het harde werk voor de database is het selecteren van de rijen; het maakt weinig uit om u 5 van de 10 kolommen te sturen, of alle 10.
Gebruik in dat geval gewoon een "SELECT * FROM ..."
en gebruik Python om de kolommen uit de resultatenset te kiezen.