Oracle data to minguodate
2023年4月19日 星期三
2023年3月31日 星期五
2022年3月28日 星期一
Oracle sql MATERIALIZE 查詢結果吃不到 index 的暴力解決方案
Oracle sql MATERIALIZE 查詢結果吃不到 index 的暴力解決方案
select /*+ MATERIALIZE */ 1 as t, 2 as y from dual
https://blog.csdn.net/liangweiwei130/article/details/37882503
https://community.oracle.com/tech/developers/discussion/2325296/what-are-lacks-of-using-materialize-hint
2022年2月8日 星期二
簡易年資計算 SQL Stored Procedure
簡易年資計算 SQL Stored ProcedureSET SERVEROUTPUT ON
DECLARE
v_seniority VARCHAR2(1); --年資
v_career_start VARCHAR2(50) := '20120604'; --年資起日
BEGIN
SELECT floor(months_between(sysdate , TO_DATE(v_career_start,'YYYYMMDD')) / 12) into v_seniority
FROM dual;
DBMS_OUTPUT.put_line('年資:' || v_seniority || '~' || (to_number(v_seniority) +1));
END;
--年資:9~10
2022年1月21日 星期五
Oracle sql 抓取 result set 後的指定筆數
Oracle sql 抓取 result set 後的指定筆數
select * from mytable --第一筆不要 offset 1 rows --只要三筆 fetch next 3 rows only
參考
Oracle PL/SQL: 取得排序後的第 n ~ m 筆資料
2022年1月9日 星期日
Oralce Add Weeks 計算疫苗第二劑 + 12 週 第三劑疫苗施打日期計算
Oralce Add Weeks 計算疫苗第二劑 + 12 週 第三劑疫苗施打日期計算
set SERVEROUTPUT ON
declare
shot2 VARCHAR2(8) := '20211020'; --第二劑日期
shot2date date;
gapeweeks number(2) := 12;
shot3 VARCHAR2(8); --第三劑日期
begin
select to_date(shot2,'YYYYMMDD') into shot2date from dual;
SELECT to_char(shot2date + ( gapeweeks * 7 ),'YYYYMMDD') into shot3 from dual;
DBMS_OUTPUT.PUT_LINE('第二劑日期:' || shot2 || ' + ' || gapeweeks || ' 週');
DBMS_OUTPUT.PUT_LINE('第三劑日期:' || shot3);
end;
--======
--OUT_PUT
--第二劑日期:20211020 + 12 週
--第三劑日期:20220112
2020年3月20日 星期五
oracle sql 效能調教
oracle sql 效能調教
https://tomkuo139.blogspot.com/2009/08/oracle-select-sql-tuning.html
https://tomkuo139.blogspot.com/2009/08/oracle-select-sql-tuning.html
訂閱:
文章 (Atom)