[解決済み] T-SQL。文字列の連結の反対 - 文字列を複数のレコードに分割する方法 [複製] (duplicate)
2022-06-05 21:01:47
質問
重複の可能性があります。
SQLで文字列を分割する
私が見たのは 文字列の連結に関連したいくつかの質問 に関連するいくつかの質問を見ました。 コマで区切られた文字列をデータの行に分割するという逆の問題には、どのようにアプローチするのでしょうか。
テーブルがあるとします。
userTypedTags(userID,commaSeparatedTags) 'one entry per user
tags(tagID,name)
そして、テーブルにデータを挿入したい
userTag(userID,tagID) 'multiple entries per user
インスピレーション データベースにないタグは? 質問
EDIT
回答ありがとうございます。本当はもっと多くのものが受け入れられるべきですが、1つしか選べません。 ソリューションであり、Cade Roux が提示した再帰を使用した解決策は、私にはかなりきれいに見えます。これは SQL Server 2005 以上で動作します。
SQL Server の以前のバージョンでは、解決策は miiesによって提供される を使用することができます。 テキストデータ型での作業には wcm回答 は役に立つでしょう。また、ありがとうございます。
どのように解決するのですか?
この問題を解決するには、さまざまな方法があります。 ここに記載されている この小さな宝石を含む。
CREATE FUNCTION dbo.Split (@sep char(1), @s varchar(512))
RETURNS table
AS
RETURN (
WITH Pieces(pn, start, stop) AS (
SELECT 1, 1, CHARINDEX(@sep, @s)
UNION ALL
SELECT pn + 1, stop + 1, CHARINDEX(@sep, @s, stop + 1)
FROM Pieces
WHERE stop > 0
)
SELECT pn,
SUBSTRING(@s, start, CASE WHEN stop > 0 THEN stop-start ELSE 512 END) AS s
FROM Pieces
)
関連
-
[解決済み] SQL Server 2012 エラー: オブジェクト参照がオブジェクトのインスタンスに設定されていない
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] SQL Server で複数行のテキストを 1 つのテキスト文字列に連結する方法
-
[解決済み] SQL Server テーブルにカラムが存在するかどうかを確認する方法は?
-
[解決済み] SQL Server の DateTime データ型から日付だけを返す方法
-
[解決済み] SQLのSELECTでIF...THENを実行するにはどうすればよいですか?
-
[解決済み] SQL ServerでJOINを使用してUPDATE文を実行するにはどうすればよいですか?
-
[解決済み] SQL Serverでシングルクォートをエスケープするにはどうすればよいですか?
-
[解決済み] INSERT INTO ...」の部分を繰り返さずに複数行の挿入を行うには?
-
[解決済み] SQL ServerでINNER JOINを使用して削除するにはどうすればよいですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 「ストアドプロシージャが見つかりませんでした
-
[解決済み] SQL Serverでシングルクォートを置換する
-
[解決済み] SQL Server データベース復元エラー: 指定されたキャストは無効です。(SqlManagerUI)
-
[解決済み] 分散型トランザクションを開始できない
-
[解決済み] テーブルの上位1レコードを更新する sql server [重複].
-
[解決済み] BCP - IDENTITY列を持つテーブルにインポートする際、キャスト指定に無効な文字値がある。
-
[解決済み] 監査失敗、クレデンシャル検証 4776
-
[解決済み] SQLでNaN値をNULLに、またはNaNを0に変換する
-
[解決済み] SQL Serverでマテリアライズド・ビューを作成する方法は?
-
[解決済み] 項目xにアクセスできるように文字列を分割するにはどうすればよいですか?