Cita: tengo que hacer una comparacion de dos campos para que me arroje resultados numericos y poder colocarlos en un MSHFlex segun el que sea mayor ya me hace la comparacion pero solo me arroja 0 y 1 lo estube leyendo y creeo que la comparacion solo hace eso alguna idea de como le puedo hacer, la verdad es que en base de datos no soy muy diestra alguna opinion me serviria de mucho.
Una comparación es una operación lógica, y toda operación lógica devuelve verdadero (TRUE) o falso (FALSE). En los lenguajes de programación, esto se traduce en 1 (True) y 0 (False), porque una computadora sólo comprende números. El SQL hace lo mismo: Toda comparación devuelve un TRUE o FALSE matemático, es decir, 1 ó 0.
Eso es para que comprendas por qué te devuelve lo que te devuelve.
Yendo a tu problema, si la comparación que buscas no se hace en el SELECT, sino en el WHERE. y si quieres que te devuelva registros completos, la cosa es simple:
Pero si la cosa es que te devuelva el campo que posee el mayor valor, se deben usar funciones de MySQL y resolver:
Si quieres otras alternativas, será mejor que des más detalles sobre las tablas y acerca de qué tipos de datos estas comparando.
Tip final: Para nosotros, a nivel de bases de datos, si el resultado lo vas a usar en un MSHFlex, en un DataGrid o en un ListView es absolutamente irrelvante. Eso es programación. Acá la cosa es sólo SQL.