一道sql面試題 translate 函式的應用

2021-06-22 13:40:47 字數 724 閱讀 3894

在emp表和dept表中。如果雇員姓名與部門名稱中有乙個或乙個以上相同的字母,則該雇員的comm增加500

想了一下,不知道一條sql怎麼做,看了答案:

update my_emp a

set comm=nvl(comm,0)+500

where a.ename<>(

select translate(a.ename,b.dname,chr(27))

from my_dept b where b.deptno=a.deptno

);

看下translate函式用法:

translate(源字串,old字元,new字元)

從源字串中找到搜尋的old字元,替換成new字元

sql> select translate('abcdefxyz','ace','ace') from dual;

translate

---------

abcdefxyz

跟replace對比下

replace(源字串,old字串,new字串)

從源字串中找到搜尋的old字串,替換成new字串

idle> select replace('abcdefxyz','def','def') from dual;

replace('

---------

abcdefxyz

idle> 

一道sql 的面試題

表結構 成績表 grade 包含字段 gradeid int,自增 sno int,學號 cno int,課程號 score float,分數 查詢每門課程的平均 最高 最低 分及課程號 select g score cno from dbtest dbo grade group by cno se...

一道面試題

一道面試題 射擊運動員10發打中90環有多少種可能,請編寫程式計算出來,並列印出結果,0環和10環均有效。打中90環就是沒打中10環,所以打中90環跟打中10環的可能性是一樣的。然後開始遞迴狂打槍,一到10就記錄 if params i 10 在迴圈的控制中已經排除了大於10的可能性 i 10 pa...

一道面試題

前些時候在找工作,就在準備結束此次找工作歷程的時候,去了一家公司面試,去了之後技術經理直接帶到一台電腦旁,給了一張紙條,上面是這樣的題目 用c或c 來實現 1 建立一棵樹,該樹的深度是隨機的,每個節點的位元組點數是隨機的。2 給每個節點分配一段隨機大小的記憶體空間,給每個節點賦乙個隨機數。3 遍歷這...