Add a field to a result for a column that doesn't exist

Ok, here’s my query:

SELECT 
  transponders.orb_pos, satellites.sat_name, transponders.frequency, transponders.symbol_rate, transponders.polarisation, transponders.fec_inner, transponders.DVB_system, transponders.modulation
 FROM
  transponders, satellites
 WHERE
   transponders.orb_pos = satellites.orb_pos 
  AND
   transponders.feed = 0
 ORDER BY
  transponders.orb_pos, transponders.frequency ASC

I want my result to also contain a variable call “band”. If “transponders.frequency” is less than 10000 it will contain the string “C”, otherwise it will contain the string “Ku”. Or would I be better off just running a second query with an additional AND clause?

compare how the CASE expression reads against your requirement…

SELECT transponders.orb_pos
     , satellites.sat_name
     , transponders.frequency
     , transponders.symbol_rate
     , transponders.polarisation
     , transponders.fec_inner
     , transponders.DVB_system
     , transponders.modulation
     , CASE WHEN transponders.frequency < 10000
            THEN 'C
            ELSE 'Ku' END   AS band
  FROM transponders
INNER
  JOIN satellites
    ON satellites.orb_pos = transponders.orb_pos
 WHERE transponders.feed = 0
ORDER 
    BY transponders.orb_pos
     , transponders.frequency 

p.s. you should be writing explicit JOINs nowadays