ホーム -> 6章 関数
prev 初心者向けSQL解説サイト 前へ 初心者向けSQL解説サイト トップへ 初心者向けSQL解説サイト 次へ next

6-2.文字列関数

  • LENGTH関数

    各生徒のローマ字での文字数を取得します。

    
    SELECT
     id, name,
     eng_name,
     LENGTH(eng_name) AS nagasa
    FROM 
     tbl_std;
    
    

    
    +-------+---------------+-------------+--------+
    | id    | name          | eng_name    | nagasa |
    +-------+---------------+-------------+--------+
    | 00001 | 佐藤 太郎     | Sato Taro   |      9 |
    | 00002 | ウルトラ マン | Urutora Man |     11 |
    | 00005 | ライダー 1号  | Raider One  |     10 |
    +-------+---------------+-------------+--------+
    
    

  • SUBSTR関数

    各生徒の名前(ローマ字)の最初の1字を取得する。

    
    SELECT id, name, SUBSTR(eng_name, 1, 1) AS one FROM tbl_std;
    
    

    
    +-------+---------------+------+
    | id    | name          | one  |
    +-------+---------------+------+
    | 00001 | 佐藤 太郎     | S    |
    | 00002 | ウルトラ マン | U    |
    | 00005 | ライダー 1号  | R    |
    +-------+---------------+------+
    
    

  • LTRIM, RTRIM関数
      LTRIM : 左の空白を削除
      RTRIM : 右の空白を削除

    前後に空白が入ったデータがないので、学生ID=00001の佐藤さんの両端に空白を挿入したあとで空白を削除します。

    
    UPDATE tbl_std SET name='    佐藤    ' WHERE id='00001';
    
    

    いつものごとく値の確認

    
    SELECT id, name FROM tbl_std;
    
    

    
    +-------+---------------+
    | id    | name          |
    +-------+---------------+
    | 00001 |     佐藤      |
    | 00002 | ウルトラ マン |
    | 00005 | ライダー 1号  |
    +-------+---------------+
    
    

    左と右の空白を削除したデータを取得

    
    SELECT id, LTRIM(name), RTRIM(name) FROM tbl_std;
    
    

    
    +-------+---------------+---------------+
    | id    | LTRIM(name)   | RTRIM(name)   |
    +-------+---------------+---------------+
    | 00001 | 佐藤          |     佐藤      |
    | 00002 | ウルトラ マン | ウルトラ マン |
    | 00005 | ライダー 1号  | ライダー 1号  |
    +-------+---------------+---------------+
    
    

  • UPPER,LOWER関数
      UPPER : 小文字を大文字にする関数
      LOWER : 大文字を小文字にする関数

    生徒の名前(ローマ字)を大文字、小文字としてデータを取得する。

    
    SELECT id, UPPER(eng_name), LOWER(eng_name) FROM tbl_std;
    
    

    
    +-------+-----------------+-----------------+
    | id    | UPPER(eng_name) | LOWER(eng_name) |
    +-------+-----------------+-----------------+
    | 00001 | SATO TARO       | sato taro       |
    | 00002 | URUTORA MAN     | urutora man     |
    | 00005 | RAIDER ONE      | raider one      |
    +-------+-----------------+-----------------+
    
    

prev 初心者向けSQL解説サイト 前へ 初心者向けSQL解説サイト トップへ 初心者向けSQL解説サイト 次へ next
inserted by FC2 system