SQLで年度を出そうと思ったときにどうやるんだ ろう、って思ったら、凄いシンプルでした。 select to_char(add_months(sysdate,-3),'YYYY') as nendo from dual 確かに3カ月引けば、そのまま年度になる。 スッキリわかる SQL 入門 ドリル215問付き! (スッキリシリーズ) ...
もっと読む
タグ:SQL
oracleでソート後で出力行数を絞る
今までは副問い合わせしていましたが、12cから こんなことが出来るらしい。 select * from table order by data asc fetch first 10 rows only これで、dataの順番に並べた後、上位10件の み表示できる ...
もっと読む
oracleでカラム(列)の追加、変更、削除
oracleでカラム追加、変更、削除。 ちょいちょい忘れるのでメモ 追加:alter table {テーブル名} add ({定義}) 変更:alter table {テーブル名} modify ({定義}) 削除:alter table {テーブル名} drop ({カラム名}) ...
もっと読む
oracleで近い文字列を探す
編集距離をoracleでチェック=UTL_MATCH. EDIT_DISTANCE_SIMILARITY 文字列の名寄せをするときに「相互の文字列が どれくらい似ているか」を表すための方法が用 意されています。 Levenshtein距離、Jaro-Winkler距離というロ ジックらしいのですが、その辺は割愛しまし て。 ...
もっと読む
oracleでnot条件でnullが入ってるときの挙動
oracle でnot演算子を使っていたら、想像してい た挙動にならなかった。 調べてみたら、nullが入っているデータを条件で 絞り込んでnotかけた場合、想像していた挙動に ならない形になる。 nullが入っていたら、絞り込もうが、notしよう がtrueにならないで、unknownになる。 ...
もっと読む
oracleのSQLで次の指定曜日
oracleでSQLで「次の水曜日」とかやるのどうや るんだろう、と思ったら、 そのまんまなコマンドがありました。 next_day(sysdate,4) とかやると、今日の日付から次の水曜日、とな ります。 後ろの数字は起算日(日本なら日曜)=1とな りますが、英語表記でも行けるみた ...
もっと読む
oracleで半角片仮名を全角変換
SQLで、半角カタカナを全角に変換する必要が あったので調べた。 oracleのバージョンによって使えないこともある らしい。 utl_i18n.transliterate('カタカナ', 'hwkatakana_fwkatakana') ...
もっと読む
oracleでupdateでora-01779
updateのSQLをちょっと修正しただけで、ORA-01779が出るようになりました。 エラー内容 ORA-01779: キー保存されていない表にマップする列は変更できません。 主キーの問題でもありますが、どうもSQLがview 扱いになってエラーになっている模様。 色々試したがダメで、MERG ...
もっと読む
oracleでカラム削除
カラム追加、修正、削除の必要があったのでメモ Alter table テーブル名 コマンド カラム指定 コマンドは、 追加:add 修正:modify 削除:drop Deleteじゃなくてdropだった。 あとデータが入ってるとうまくできないかも。 ...
もっと読む