Mailinglisten-Archive |
Hallo Thomas Handle Thomas (LZD) schrieb > ich möchte eine MySQL-Abfrage erstellen, die mir das Profil eines > Benutzers auswertet. > > Ich habe ca. 30 Spalten und möchte eine Darstellung in der > Form XX-% eines Benutzerprofils ausgefüllt. > > Dazu nehme ich die Gesamtzahl der Spalten, kein Problem. > > Wie jedoch kann ich dann alle Spalten auswählen, die entweder > 0 oder NULL oder 0000-00-00 sind? Du kannst die Anzahl der Spalten ermitteln, in denen kein Nullwert steht, indem du für jede dieser Spalte eine 1 addierst. Im einfachsten Fall mit IF(spalte, 0, 1). Du kannst auch individuelle Werte ermitteln, z. B. IF(spalte > x, 0, 1). SELECT ROUND( 100 * ( SELECT IF(spalte1, 0, 1) + SELECT IF(spalte2, 0, 1) + ... SELECT IF(spalte32, 0, 1) ) / 32 ) Möglicherweise ist es schneller, wenn du mit SELECT * alle Werte holst und die entsprechende Auswertung mit PHP machst. Gruß, Hans
php::bar PHP Wiki - Listenarchive