如何在 Oracle APEX 19 中的 Select 列表上设置默认值?
How to Set Default Value on a Select List in Oracle APEX 19?
我有一个select列表来显示
的国籍列表
SELECT DESCRIPTION d, NATIONALITY_ID r FROM NATIONALITY ORDER BY DESCRIPTION;
这会按字母顺序返回我的列表,这很好。我现在希望默认值为“British”,因为这将是这种情况下最常用的一种。但是,即使将“显示空值”设置为“否”,并且在尝试将默认值设置为静态并将其设置为“英国”后,它也不起作用,我也尝试将默认值设置为“SQL查询”该查询是
SELECT DESCRIPTION FROM NATIONALITY WHERE DESCRIPTION = ‘British’
我尝试的所有方法都不起作用,它将继续显示列表中的第一个 select离子。
select列表项的值为return值,不是显示值。
假设您有一个关于用户 table 的表单。页面项目之一将是“国籍”。在用户 table 中,您将有一列 nationality_id,其中包含指向国籍 table 的外键。页面项目 P1_NATIONALITY 将包含存储在用户 table 中的值 - 即 nationality_id.
要设置默认值,您可以像这样使用“SQL 查询”:
SELECT NATIONALITY_ID FROM NATIONALITY WHERE DESCRIPTION = ‘British’
修改ORDER BY
子句:
SQL> with nationality (description, nationality_id) as
2 (select 'Austrian', 1 from dual union all
3 select 'Croatian', 2 from dual union all
4 select 'British' , 3 from dual union all
5 select 'French' , 4 from dual
6 )
7 select description d, nationality_id r
8 from nationality
9 order by case when description = 'British' then 1
10 end,
11 description;
D R
-------- ----------
British 3
Austrian 1
Croatian 2
French 4
SQL>
我有一个select列表来显示
的国籍列表SELECT DESCRIPTION d, NATIONALITY_ID r FROM NATIONALITY ORDER BY DESCRIPTION;
这会按字母顺序返回我的列表,这很好。我现在希望默认值为“British”,因为这将是这种情况下最常用的一种。但是,即使将“显示空值”设置为“否”,并且在尝试将默认值设置为静态并将其设置为“英国”后,它也不起作用,我也尝试将默认值设置为“SQL查询”该查询是
SELECT DESCRIPTION FROM NATIONALITY WHERE DESCRIPTION = ‘British’
我尝试的所有方法都不起作用,它将继续显示列表中的第一个 select离子。
select列表项的值为return值,不是显示值。
假设您有一个关于用户 table 的表单。页面项目之一将是“国籍”。在用户 table 中,您将有一列 nationality_id,其中包含指向国籍 table 的外键。页面项目 P1_NATIONALITY 将包含存储在用户 table 中的值 - 即 nationality_id.
要设置默认值,您可以像这样使用“SQL 查询”:
SELECT NATIONALITY_ID FROM NATIONALITY WHERE DESCRIPTION = ‘British’
修改ORDER BY
子句:
SQL> with nationality (description, nationality_id) as
2 (select 'Austrian', 1 from dual union all
3 select 'Croatian', 2 from dual union all
4 select 'British' , 3 from dual union all
5 select 'French' , 4 from dual
6 )
7 select description d, nationality_id r
8 from nationality
9 order by case when description = 'British' then 1
10 end,
11 description;
D R
-------- ----------
British 3
Austrian 1
Croatian 2
French 4
SQL>