【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 2012】バッチ(コマンドプロンプト)でリストア
バッチ(コマンドプロンプト)を使って、SQL Server 2012のリストアしてみたいと思います。
-
-
【SQL Server 2012】SQLでエクセルをテーブルとして表示させる方法
SQL Management Studioを使用してインポート等は使用せずにSQLのみでテーブルを表
-
-
【SQL Server】エクセルをテーブルに取り込む方法
以前にManagement Studioを使ってSQLでエクセルを直接取り込む方法を書きましたが、今
-
-
【SQL Server】Management Studioでテーブルをデザインから変更するとエラーになる
変更の保存が許可されていません。行った変更には、次のテーブルを削除して再作成することが必要に
-
-
【ODBC】Windows7でAccess2007とSQL Serverを接続する為のODBCの作成
前回、ODBC接続の為のサーバー側の設定を行いましたので、 今回はAccess2007側のWind
-
-
【SQLServer2012】バックアップ/リストア方法 リストア編
SQL Server 2012のデータベースをManagement Studioを使用して、リストア
-
-
【ODBC】Access2007でSQL Server 2012に接続する為のサーバー側の設定
ODBCでAccess2007からSQL Server 2012へ接続する為には SQL Serv
-
-
【SQL Server 2012】Management Studioで誰がデータベースに接続しているか調べる。
SQL Server 2012でリアルタイムで接続しているユーザーを確認するには Manageme
-
-
【SQL Server 2012】Management Studioを使ったバックアップで面白い機能。
Management Studioを使ったバックアップをかれこれ3年くらいやってるんですが、一つのバ
-
-
【SQL Server 2012】SQLでエクセル表示の実行エラーの対処法
SQLでエクセル表示を実行した時にエラーとなった場合の対処法。 実はSQLでエクセルファイルを表示