SELECT * FROM MY_TABLE;
CLOUMN_NAME
1st
2nd
3rd
运行此查询时获取输出。
我需要 默认值为'请选择'作为第一行总是 偶数列保存结果集的空值或空值。
已过滤的结果
CLOUMN_NAME
Please Select
1st
2nd
3rd
提前致谢。
答案 0 :(得分:1)
尝试使用union all
,如下所示
SELECT 'Please Select' as CLOUMN_NAME
union all
SELECT cast(CLOUMN_NAME as varchar) FROM MY_TABLE;
我不确定哪种类型为CLOUMN_NAME
但应该是string
类型,因为在第一次查询中我们会返回此类型。
答案 1 :(得分:0)
select 'please select' col_name
union all
select col_name::text FROM MY_TABLE;
编辑:根据this评论
在您的情况下,您需要在第二个 选择语句中使用order by
select 'please select' col_name
union all
(select col_name::text FROM MY_TABLE order by 1)
如果该列不是MY_TABLE
,Text
varchar
)转换为文本
答案 2 :(得分:0)
如果你想要一个稳定的排序,你需要某种标准来区分"第一个"来自"真实"的:
select column_name
from (
select 'please select' as column_name, 0 as sort_order
union all
select column_name, 1 as sort_order
FROM MY_TABLE
) t
order by sort_order;
请注意,在这种情况下,实际数据的排序顺序是未定义的,因为表中的所有行都是相同的" sort_order"值。如果你是希望按字母顺序排序实际行,您可以通过以下方式将显示列添加到订单:`order by sort_order,column_name。
以上假设my_table.column_name
是字符数据类型。如果不是,你需要一些类型的铸造。