ホームページ >データベース >mysql チュートリアル >SQL Server でハイフンのない VARCHAR を UNIQUEIDENTIFIER に変換する方法

SQL Server でハイフンのない VARCHAR を UNIQUEIDENTIFIER に変換する方法

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-24 16:46:13984ブラウズ

How to Convert a Hyphenless VARCHAR to a UNIQUEIDENTIFIER in SQL Server?

SQL Server でハイフンのない VARCHAR を UNIQUEIDENTIFIER に変換する

問題: SQL Server でハイフンなしの一意の識別子を含む VARCHAR 列を UNIQUEIDENTIFIER データ型に直接変換すると、多くの場合エラーが発生します。ハイフンが欠落しているため、標準の変換手法は失敗します。

解決策: この効率的な SQL クエリは、キャストする前に VARCHAR 文字列にハイフンを手動で挿入することで問題を解決します。

<code class="language-sql">DECLARE @uuid VARCHAR(50)
SET @uuid = 'a89b1acd95016ae6b9c8aabb07da2010'
SELECT CAST(
    SUBSTRING(@uuid, 1, 8) + '-' + SUBSTRING(@uuid, 9, 4) + '-' + SUBSTRING(@uuid, 13, 4) + '-' +
    SUBSTRING(@uuid, 17, 4) + '-' + SUBSTRING(@uuid, 21, 12)
    AS UNIQUEIDENTIFIER)</code>

仕組み: クエリは入力 VARCHAR (@uuid) から部分文字列を抽出し、戦略的にハイフンを配置して標準の UNIQUEIDENTIFIER 形式 (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) を再構築します。 )。 結果の文字列は、UNIQUEIDENTIFIER データ型にキャストされます。 この方法では、ハイフンのない入力を処理する場合でも正確な変換が保証されます。

以上がSQL Server でハイフンのない VARCHAR を UNIQUEIDENTIFIER に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。