[解決済み] DateフィールドがNULLのとき、SQLクエリが空の文字列ではなく「01/01/1900」を返すのはなぜですか?重複
2022-02-09 03:56:54
質問
SQLクエリの戻り値をテストしています。
選択中のテーブルには、値
NULL
の中に
CloseDate
フィールドを使用します。
であるかどうかをチェックするロジックを持っています。
NULL
の場合、空文字列を返します。しかし、それは
01/01/1900
declare @value varchar(50) = '2346677888'
Set @Value=@Value +'%'
select CONVERT(varchar,ISNULL(m.CloseDate,''),101) as CloseDate from(
SELECT m.EdsClosedDate AS CloseDate
FROM [dbo].[tblMyTable] m
WHERE MID like @value) m
クエリに問題があるのでしょうか?
解決方法は?
この式は
select CONVERT(varchar, ISNULL(m.CloseDate, ''), 101) as CloseDate
は、より明確にこう書かれています。
select CONVERT(varchar(255), COALESCE(m.CloseDate, 0), 101) as CloseDate
つまり、空の文字列は日付の値 "0" と同じです。 SQL Serverは1900-01-01から日付を数え始めるので、結果にそのように表示されるのです。
何を期待しているのかよくわからないのですが。 もし空の文字列が必要なら、その文字列を の後に 値を文字列に変換します。
select COALESCE(CONVERT(varchar(255), m.CloseDate, 101), '') as CloseDate
関連
-
[解決済み] バックエンドバージョンでは、データベースのダイアグラムやテーブルのデザインはサポートされていません。
-
[解決済み】単一のクエリで加重平均を計算する
-
[解決済み] pg_restoreです。[archiver] 入力ファイルはテキスト形式のダンプであるように見えます。psql を使用してください。
-
[解決済み] CLOBとNCLOBの違いは何ですか?
-
[解決済み] JavaScriptで空文字列/未定義文字列/null文字列をチェックするにはどうすればよいですか?
-
[解決済み] クエリビルダーのSQLクエリを文字列として出力するにはどうすればよいですか?
-
[解決済み] Spring の @Autowired フィールドが NULL になっているのはなぜですか?
-
[解決済み] PowerShellで文字列がNULLまたは空であるかどうかを確認するにはどうすればよいですか?
-
[解決済み] INTからVARCHARへの変換 SQL
-
[解決済み】MySQL:カラムがNULLの場合の行の選択
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 列名または提供された値の数がテーブル定義と一致しない
-
[解決済み】2つの列を分割する方法は?
-
[解決済み】sys.dm_exec_sql_textはどのように機能するのでしょうか?
-
[解決済み】SQL Serverは「集約関数やサブクエリを含む式に対して集約関数を実行できない」が、Sybaseはできる。
-
[解決済み] SQL Server - 'RETURN'付近の、条件が想定されるコンテキストで指定された、非ブール型の式。
-
[解決済み] リンクされたサーバーの NULL に対して OLE DB プロバイダー Microsoft.Jet.OLEDB.4.0 のインスタンスを作成できません。
-
[解決済み] 検索エラー ORA-00932: 不整合なデータ型: 期待された DATE は NUMBER になりました。
-
[解決済み] アクセスクエリーエラー(from句のシンタックスエラー)
-
[解決済み] 列名または提供された値の数がテーブル定義と一致しません。
-
[解決済み] SQLで複数のGROUP BYを使用する場合とは?