[解決済み] T-SQLのPadLeft関数
2022-07-16 01:50:22
質問
次の表Aがあります。
id
----
1
2
12
123
1234
を左詰めにする必要があります。
id
の値をゼロで左詰めする必要があります。
id
----
0001
0002
0012
0123
1234
どうすれば実現できるのでしょうか?
どのように解決するのですか?
私はこれがあなたが探しているものであるかもしれないと信じています。
SELECT padded_id = REPLACE(STR(id, 4), SPACE(1), '0')
FROM tableA
または
SELECT REPLACE(STR(id, 4), SPACE(1), '0') AS [padded_id]
FROM tableA
2番目の例の構文はテストしていません。これが100%うまくいくかどうかはわかりません - 若干の調整が必要かもしれませんが - 希望する出力を得る方法の一般的なアイデアを伝えています。
EDIT
コメントで挙げられた懸念に対応するため...
@pkr298 - はい、STRは数字にのみ作用します...。OP のフィールドは ID です...したがって、数字のみです。
@Desolator - もちろんそれはうまくいきません...最初のパラメータは6文字です。 次のようなことができます。
SELECT REPLACE(STR(id,
(SELECT LEN(MAX(id)) + 4 FROM tableA)), SPACE(1), '0') AS [padded_id] FROM tableA
これは理論的にはゴールポストを移動させるはずです...数字が大きくなればなるほど、常に機能するはずです...1でも123456789でも関係なく...
つまり、最大値が123456であれば、0000123456と表示され、最小値が1であれば、0000000001と表示されます。
関連
-
[解決済み] シェル文字列不正置換
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] SQL Server テーブルにカラムが存在するかどうかを確認する方法は?
-
[解決済み] SQL Server の DateTime データ型から日付だけを返す方法
-
[解決済み] SQL ServerにおけるLEFT JOINとLEFT OUTER JOINの比較
-
[解決済み] JavaScriptにおけるendsWith
-
[解決済み] SQL Serverでテーブルからカラム名を取得するにはどうすればよいですか?
-
[解決済み] NULLも許容するユニークな制約を作成するにはどうしたらいいですか?
-
[解決済み] Pythonの文字列をスペースで埋めるにはどうしたらいいですか?
-
[解決済み】結合を使用したSQL更新クエリ
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Haskellで文字列を分割する方法は?
-
[解決済み] LC-3アセンブリ言語で文字列を印刷する (super noob)
-
[解決済み] OCaml - intをstringに変換する方法は?
-
[解決済み] OCamlでcharから文字列に変換する
-
[解決済み] PowerShell の " (" - 中括弧 ) の分割について
-
[解決済み] Luaでstring.gmatch()を使って文字列を分割する
-
[解決済み] sqliteでパディングを含む文字列を連結する方法
-
[解決済み] 左側のvarcharを一定の長さに詰める最も効率的なT-SQLの方法は?
-
[解決済み】Objective-CのisEqualToStringのSwiftに相当するものは何ですか?
-
[解決済み] 複数行の文字列をカンマで区切られた1つの文字列に変換する