【SQL Server】varchar型、nvarchar型の文字数とバイト(byte)数を取得する
varchar型の文字数、バイト(byte)数を取得する方法
SELECT LEN(【文字数を取得したいカラム名】) as 文字数 ,DATALENGTH(【Byte数を取得したいカラム名】)as Byte数 FROM 【対象テーブル名】
varchar型については、例のようにLEN関数とDATALENGTH関数を使用することで簡単に取得することができる。
nvarchar型の文字数、バイト(byte)数を取得する方法
SELECT LEN(【文字数を取得したいカラム名】) AS 文字数 ,DATALENGTH(CONVERT(varchar(50),【文字数を取得したいカラム名】)) AS Byte数 FROM 【対象テーブル名】
nvarchar型の文字数については、LEN関数で問題なく取得可能。
バイト(Byte)数を取得する際は、一度、CONVERT関数を使用し、varchar型へ変換してからDATALENGTH関数を使用しないと、全角半角関係なく1文字が2Byteとして扱われてしまう。
また、CONVERT関数でvarchar型へ変換するが、varchar型の大きさを指定しないと最大サイズが「30」となってしまうので、実際のサイズと同様のサイズ以上で指定したほうが良い。
今回使用したバージョン:SQL SERVER 2012
Adsense
関連記事
-
-
【SQL Server】バックアップ取得日を確認する方法
前回の記事で、SQL Serverのデータベースのリストアした日付を確認するSQLを作りましたが、今
-
-
【SQL Server 2012】バッチ(コマンドプロンプト)でリストア
バッチ(コマンドプロンプト)を使って、SQL Server 2012のリストアしてみたいと思います。
-
-
【Management Studio】Microsoft SQL Server 2012 ExpressにManagement Studio のインストール方法。
前回、Windows Server 2012にSQL Server 2012 Expressをインス
-
-
【SQL Server 2012 Express】Windows Server 2012にインストールしてみる
Windows Server 2012にSQL Server 2012をインストールしてみる。 以
-
-
【SQL Server 2012】Management Studioで誰がデータベースに接続しているか調べる。
SQL Server 2012でリアルタイムで接続しているユーザーを確認するには Manageme
-
-
【SQL Server】Excel VBAでSELECT文を実行してレコードセットへ取得
前回は、テーブルのレコードをVBAで直接更新(Insert/update/delete) 今回
-
-
【SQL Server 2012】Management Studioでサンプルデータベース(mdfファイル)をアタッチ
以前、Windows Server 2012にMicrosoftR SQL ServerR 2012
-
-
【SQLServer2012】バックアップ/リストア方法 リストア編
SQL Server 2012のデータベースをManagement Studioを使用して、リストア
-
-
【SQL Server】アンインストール手順
手順としては、http://technet.microsoft.com/ja-jp/library/
-
-
【SQL Server】Excel VBAのレコードセットを使ってテーブルの一括更新
前々回は読み取り専用でレコードセットへ取得し、結果をエクセルへ書き出し 前回はVBAから更新S