ログログ

雑学プログラマが学んだことの記録

MySQL

【MySQL】先頭の0を削除して出力(ゼロサプレス)する方法

投稿日:2018年12月19日 更新日:

コード値等で、”001″となっている値を、”1″として出力するには、CAST関数でSIGNED/UNSIGNEDを指定して数値型にする方法があります。

SIGNED/UNSIGNEDは正負の値の有無があり、範囲は以下のようになります。
・SIGNED:INTEGERで正負の値(-2147483648 ~ 2147483647)
・UNSIGNED:INTEGERで正の値(0 ~ 4294967295)

UNSIGNED

正数になりうる値をキャストします。

⇒1

マイナスがあるのに、UNSIGNEDを指定すると誤った値にCASTされます。
マイナスが付く場合は、SIGNEDを指定します。

⇒18446744073709551615

SIGNED

正負どちらでもキャストされます。

⇒1

⇒-1

文字列を含む場合

値に文字列を含む場合、文字列以降は除外されて出力されます。

⇒1

⇒10

⇒10

⇒0

-MySQL
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

no image

【MySQL】自テーブルのカラムの値を0埋めで更新する方法

構文

記載例

  UPDATE前後の値を比較 UPDATE …

MySQL-タイムゾーン設定すると起動しなくなる原因と対処方法

MySQLのタイムゾーン設定をすると、XAMPPでMySQLが起動できなる原因と対処法です。   目次 原因XAMPP起動時に表示されるエラーメッセージ対処方法timezonesをダウンロー …

no image

【MySQL】DATETIME型をYYYY-MM-DDの条件でSELECTした結果

以下のようなデータ(2018-12-28 YYYY-MM-DD)を、「2018‐12‐28」を条件に検索した場合、どのような結果になるかちょっと気になったので確認してみた。 [crayon-5dc9c …

no image

【MySQL】DATETIMEをVIEWでDATEにする方法

DATETIME型をDATE_FORMAT関数で、YYYY-MM-DD形式に変換するとVIEWでDATEではなく、VARCHAE(10)になってしまう問題の解消方法。 方法としては、DATE型でキャス …

no image

MySQLのCASE文でORが正しく評価されない場合

CASEでORが正しく評価されない場合、記述の仕方が誤っている可能性があります。 以下のようなデータがあるとします。 flgは3種類あり、0と1⇒A、2⇒Bとして出力するとします。 idflg1121 …