我想做的事情如下:
select (if lookup = 8 then 08 else lookup) lookup
, //more columns
from lookup_table
order by lookup
Run Code Online (Sandbox Code Playgroud)
不幸的是,Oracle似乎不喜欢这种语法,我没有发现为什么或找到我应该使用的其他功能.
基本上,如果查找值为8,我想获得08,否则我想要查找的值.我确定我只是愚蠢.
要对新表字段进行一些测试,我想假设我的测试数据库中现有记录的一些值.我想为表中的每第8条记录分配一个值.我可以使用以下语法轻松选择每个第8条记录:
select *
from
(select rownum rn
, jeffs_field_to_update
from jeff)
where mod(rn, 8) = 0;
Run Code Online (Sandbox Code Playgroud)
但是,我对SQL很新,我似乎无法将其转换为更新语句.我在这里看到很多关于选择第n条记录的答案,但我已经知道了.任何援助将不胜感激.
我知道这是微观优化 - 这更像是好奇心的问题.
我很好奇,下面两个选项更快:
1) :new.a := upper(:new.a);
2) select upper(:new.a) into :new.a from dual;
Run Code Online (Sandbox Code Playgroud)
我没有在这里或这里找到任何性能信息,虽然那些是使用文档,所以我可能在错误的地方寻找.我确实在第二次运行解释计划,但无法弄清楚如何让第一个工作.
这主要是好奇心的问题.我试过像"静态类速记"或"静态类昵称"之类的搜索,但没有找到任何东西,这让我相信它是不可能的.
假设有一个静态类叫做TransitionalTransactionDeltaTemporaryRecord.在C#中是否有一种方法可以在我的代码中为所述类创建一个命名较短的引用,这样我就可以使用引用代替类了?下面的伪代码示例.
staticref DeltaRecord = System.TransitionalTransactionDeltaTemporaryRecord;
Transaction test = new Transaction();
// Ideally, these two would accomplish the same thing
test.Epsilon = DeltaRecord.ComputeEpsilon(pi);
test.Epsilon = TransitionalTransactionDeltaTemporaryRecord.ComputeEpsilon(pi);
Run Code Online (Sandbox Code Playgroud)
我希望尽可能避免使用极长的标识符.
我似乎无法弄清楚如何将字符串嵌入 F# 中的内插字符串内。从表面上看,它与 C# 非常相似。例如,在 C# 中我会写类似的内容
Console.WriteLine($"Truly, it is {(string.IsNullOrEmpty("") ? "" : "not ")}empty.");
//Result: Truly, it is empty. OR Truly, it is not empty.
Run Code Online (Sandbox Code Playgroud)
大括号内的括号允许我在插值表达式中嵌入额外的字符串文字。
我尝试在 F# 中复制这个
printfn $"Truly it is {(match (String.IsNullOrEmpty "l") with | true -> "" | false -> "not ")}empty."
Run Code Online (Sandbox Code Playgroud)
包裹内插表达式的括号似乎没有完成同样的事情。它建议对内插匹配表达式使用显式let绑定,但出于学习目的,我想在一行中完成它。
有没有办法在 F# 中执行此操作,或者我是否一直let为嵌入式三元定义 a ?
假设我有一个函数,我需要在其中执行多个操作,所有操作都取决于一个查询的结果.我能找到的所有东西都表明我需要在程序之外定义一个临时表,我不想这样做.
我想做类似以下的事情:
create or replace function f_example(
a_input in number
)
return varchar2 is
begin
create local temporary table tempIDs
(
testID number(6, 0)
, testValue number(8,0)
);
//select data from tableFoo that will be overwritten by a_input into tempIDs
//update data in tableFoo with a_input & store old data in another tableFoo field
end f_example;
Run Code Online (Sandbox Code Playgroud)
此语法不起作用.Oracle不允许在函数内部使用"创建".
我不是一个真正的数据库程序员 - 我习惯于使用C#和Java.在这种情况下,我会将我的值存储在方法完成时超出范围的本地数组(或其他)中.在Oracle SQL中是否合法地无法做到这样的事情?
为清晰起见,在解决后编辑.
我想将按钮上的悬停颜色从默认的蓝色更改为另一种颜色.我想这样做而不必完全重新定义按钮的所有CSS.我只想覆盖悬停颜色,留下剩余的默认值.
图片:
通常,就是这样:
徘徊,就是这样: 
我想在悬停时更改突出显示颜色.
编辑:
试过:
.Cancel:hover
{
background: linear-gradient(black, white); //Tried these separately
background-color:Red;
}
Run Code Online (Sandbox Code Playgroud)
和按钮标记:
<asp:Button ID="btnPprGrdsCancelRefresh" runat="server" Text="Cancel/Refresh" CssClass="Cancel" />
Run Code Online (Sandbox Code Playgroud)
线性渐变似乎没有做任何事情,背景颜色改变了按钮的颜色,而不是按钮上的遮罩.
oracle ×4
sql ×4
asp.net ×1
c# ×1
css ×1
f# ×1
function ×1
html ×1
performance ×1
select ×1
sql-update ×1
static ×1
temp-tables ×1