SQL Q&A

 

「char」と「varchar」は何か違いがあるのでしょうか?

SQLにおいて、必ず4桁の数字が入ると決まっている列に対して、

char(4)と書くのとvachar(4)と書くのでは、何か違いがあるのでしょうか?

このエントリーをはてなブックマークに追加
2014-07-30 14:24:50   1252

コメント

2014年 08月 11日 (19:06)
こんにちは。
イノ(inno)です。

DECLARE @Str1 char(4)
DECLARE @Str2 varchar(4)

SET @Str1 = 'A'
SET @Str2 = 'B'

SELECT @Str1, @Str2

ここでchar(4)を指定した@Str1に'A'を設定しました。
1バイトを指定しましたが、実際は4バイトを全部使用しています。
2バイトを指定しても4バイトを全部使用します。

varchar(4)を指定した@Str2に'B'を設定してみます。
ここも1バイトを指定しました。実際使用されるバイト数もvarcharの場合は1バイトです。
2バイトを指定すると指定した2バイトのみ使用することになります。

では、全部varcharを使った方がいいと思われるかも知れませんが、
大容量データベースでは4バイト未満を使用する場合、charを使った方がパフォーマンス的にイイと言われています。

SQL SERVER 店舗毎のTOP10

-.日付:2015-12-22   カテゴリ : -   閲覧数:467

SQLServer Management Studio サーバーへの接続履歴を削除したい  (1)

-.日付:2015-03-09   カテゴリ : -   閲覧数:1647

sql server 2008 でselect文のwhere句にcaseを使って複数条件をセットしたい

-.日付:2015-02-12   カテゴリ : -   閲覧数:1291

IDENTITY列の複数テーブルへのINSERT  (1)

-.日付:2014-10-02   カテゴリ : -   閲覧数:1365

Sqlのパフォーマンスについての質問です。  (1)

-.日付:2014-08-27   カテゴリ : -   閲覧数:1231

SELECT時にカウントアップ  (1)

-.日付:2014-08-25   カテゴリ : -   閲覧数:1543

「char」と「varchar」は何か違いがあるのでしょうか?  (1)

-.日付:2014-07-30   カテゴリ : -   閲覧数:1252

Copyright © 2015 INNOYA.COM All rights reserved. RSS