1
SELECT ROUND(K1,2)
FROM (SELECT '5.66666' UNION ALL
      SELECT '5.77777' UNION ALL
      SELECT '5.88888' UNION ALL
      SELECT '5.99999' UNION ALL
      SELECT '6.66666' UNION ALL
      SELECT '7.66666' UNION ALL
      SELECT '8.66666' UNION ALL
      SELECT '9.66666' UNION ALL
      SELECT '9.55555' UNION ALL 
      SELECT '6.88888' AS K1) K

Error says Invalid Column name 'K1'

Mureinik
  • 297,002
  • 52
  • 306
  • 350
Ankit Bajpai
  • 13,128
  • 4
  • 25
  • 40

3 Answers3

2

The column alias in a union [all] structure comes from the first query, not the last one. Move your alias there, and you should be OK:

SELECT ROUND(K1,2)
FROM (SELECT 5.66666 AS K1 UNION ALL -- Here!
      SELECT 5.77777 UNION ALL
      SELECT 5.88888 UNION ALL
      SELECT 5.99999 UNION ALL
      SELECT 6.66666 UNION ALL
      SELECT 7.66666 UNION ALL
      SELECT 8.66666 UNION ALL
      SELECT 9.66666 UNION ALL
      SELECT 9.55555 UNION ALL 
      SELECT 6.88888) K
Mureinik
  • 297,002
  • 52
  • 306
  • 350
0

Give column name for the first record, then it will take the same name for rest for records.

SELECT ROUND(K1,2)
FROM (SELECT '5.66666' AS K1 UNION ALL
      SELECT '5.77777' UNION ALL
      SELECT '5.88888' UNION ALL
      SELECT '5.99999' UNION ALL
      SELECT '6.66666' UNION ALL
      SELECT '7.66666' UNION ALL
      SELECT '8.66666' UNION ALL
      SELECT '9.66666' UNION ALL
      SELECT '9.55555' UNION ALL 
      SELECT '6.88888') K
Jibin Balachandran
  • 3,381
  • 1
  • 24
  • 38
0

Give alias name for first row of first column or give alias name for all rows of first column :

   SELECT ROUND(K1,2)
   FROM 
   (
      SELECT '5.66666' AS K1 UNION ALL
      SELECT '5.77777' AS K1 UNION ALL
      SELECT '5.88888' AS K1 UNION ALL
      SELECT '5.99999' AS K1 UNION ALL
      SELECT '6.66666' AS K1 UNION ALL
      SELECT '7.66666' AS K1 UNION ALL
      SELECT '8.66666' AS K1 UNION ALL
      SELECT '9.66666' AS K1 UNION ALL
      SELECT '9.55555' AS K1 UNION ALL 
      SELECT '6.88888' AS K1
    ) K
Mansoor
  • 4,061
  • 1
  • 17
  • 27