検索
連載

SQLのSELECT文を使用したデータの取得間違いやすいポイントを追え! Bronze SQL基礎I(2)(2/2 ページ)

Oracleデータベースエンジニアとしての基礎力を証明するORACLE MASTER Bronzeの取得を目指すITエンジニアは多い。本連載で間違いやすいポイントを確認し、合格に近づこう!

Share
Tweet
LINE
Hatena
前のページへ |       

算術式とNULL値

例題2

次のデータと要件を確認してください。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

次のSQL文のうち、計算結果が戻ってこないものを1つ選択してください。

a.select last_name,salary*12 from employees;

b.select 50+50 from dual;

c.select last_name,salary*commission_pct from employees;

d.select last_name,salary*commission_pct from employees

  where commission_pct is not null;

e.select last_name,salary*commission_pct from employees

  where commission_pct =not null;

例題の範囲をおさらい

・算術式

 SQL文では、算術演算子を使用して、数値および日付データを計算することができます。

演算子 説明
+ 加算
- 減算
* 乗算
/ 除算

 カッコを使用し、算術式の優先順位を変更することも可能です。

・NULL値

 NULLとは使用不可、未割り当て、不明、適用不能などを表す値であり、ゼロや空白のスペースとは異なります。 NULL値が含まれる算術式の結果は、すべてNULLとなります。

正解

c

解説

選択肢a:通常の算術式を使ったSQL文です。計算結果は下記のように戻ります。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

選択肢b:DUAL表とはダミー表であり、算術式を使って計算結果を出すことが可能です。計算結果は下記のように戻ります。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

選択肢c:commission_pct列にはNULL値が存在します。NULL値を計算するとNULLになるため、値は戻ってきません。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

選択肢d:WHERE句に「is not null」と設定することで、NULL値を除く値を計算した結果が戻ってきます。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

選択肢e:WHERE句に「= not null」を設定することはできず、エラーとなります。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 問題文では「計算結果が戻ってこない」SQL文を尋ねています。こちらはもともと正常なSQL文ではないため、正解とはなりません。

 よって、計算結果が戻ってこないSQL文はcです。

まとめ

 次の内容をチェックしましょう。

  • SQL文の基本構文
  • 算術式の記載方法と優先順位
  • NULL値の扱い方

 今回の範囲も第1回「リレーショナルデータベースの基本とSQL*PLUS」と同じく、正確に覚えておけば、点数が取れる内容です。確実に点が取れるようにしておきましょう。

 次回は、データの制限およびソートについて、間違いやすい点にポイントを絞って説明します。


前のページへ |       

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る