質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Oracle

Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Q&A

解決済

2回答

175閲覧

SQL:数値の値によって結果を変化させたい

kukku-zelda

総合スコア22

Oracle

Oracleは、米オラクルが取り扱うリレーショナルデータベース管理システムです。メインフレームからPCまで、多様なプラットフォームに対応しています。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

0グッド

0クリップ

投稿2018/07/19 10:17

編集2018/07/19 10:18

ORACLE の文字列変換について質問です。

以下のように変化させたいです。

Number型 0 → 文字列 00
Number型 1 → 文字列 01
Number型 10 → 文字列 10
Number型 null → 文字列 半角スペース2桁

としたいのですが、力不足ゆえ、うまくいきません。。。

おわかりになる方、教えてください。
お願いします。

ちなみに・・・
SELECT
LPAD(NVL(TO_CHAR(0),' '),2,' ')
FROM DUAL;
とやってみましたが、当然ながら半角スペースと0になってしまいます。。。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

Orlofsky さんのをお借りして

SQL

1SELECT 2 '[' || coalesce(to_char(num1, 'FM00'), ' ') || ']' AS ANS 3FROM( 4 SELECT 0 AS NUM1 FROM DUAL UNION ALL 5 SELECT 1 FROM DUAL UNION ALL 6 SELECT 10 FROM DUAL UNION ALL 7 SELECT NULL FROM DUAL 8 ) A ;

投稿2018/07/19 11:55

sazi

総合スコア25188

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

SQL

1SELECT 2 '[' || 3 CASE 4 WHEN A.NUM1 IS NULL THEN ' ' 5 WHEN A.NUM1 = 0 THEN '00' 6 WHEN A.NUM1 = 1 THEN '01' 7 WHEN A.NUM1 = 10 THEN '10' 8 END 9 || ']' AS ANS 10FROM( 11 SELECT 0 AS NUM1 FROM DUAL UNION ALL 12 SELECT 1 FROM DUAL UNION ALL 13 SELECT 10 FROM DUAL UNION ALL 14 SELECT NULL FROM DUAL 15 ) A ; 16 17ANS 18-------- 19[00] 20[01] 21[10] 22[ ]

投稿2018/07/19 10:32

Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kukku-zelda

2018/07/19 10:34

ご回答、ありがとうございます! 最終的に、以下のような形にまとめてみました。 create table tameshi( otameshi number (2,0), id varchar2 (1 byte) ); insert into tameshi values(0,'A'); insert into tameshi values(1,'B'); insert into tameshi values(10,'C'); insert into tameshi values(NULL,'D'); SELECT OTAMESHI, ID, CASE WHEN OTAMESHI IS NULL THEN ' ' ELSE TO_CHAR(LPAD(OTAMESHI,2,0)) END AS HENKAN FROM TAMESHI;
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問