私は、次の2つの列を持つテーブルを持っています:URL AとURL B。URL Aが非アクティブになるたびに、それはリダイレクトされます。リダイレクトするURL Bレコード。それ以外の場合はNULLです。私は今、リダイレクトを1回以上発生させるという問題を抱えています(100回まで言いましょう)。私は最終的に最後のリダイレクトを指すすべてのURLの一意のIDとして最後のリダイレクトの値を割り当てようとしています。ここでRedshiftでの再帰CTE
は一例です:私はおそらく参加し、いくつかのとサブクエリでこれを行うことができることを知っている
URL Unique-URL
AAA AAC
AAB AAC
AAC AAC
:
URL-A URL-B
AAA NULL
AAA AAB
AAB NULL
AAB AAC
AAC NULL
は、私はそれが見えるようにしたいことは、このです。ただし、リダイレクトが何回あるかわからない場合があります(おそらく100までです)。Redshiftで再帰的なCTEを使用してこの問題を解決できることはわかっていますが、許可されていません。私の選択肢は何ですか?あなたは、すべてのユーザーIDの最後のリダイレクトを決定し、このような元のイベントのテーブルに戻ってそれに参加するために窓関数を使用することができ、各イベントのユーザーIDとタイムスタンプを持つ
私はそこに願っています赤十字との違いはありません。しかし、あなたは再帰的なcteが必要ですhttps://stackoverflow.com/questions/35979198/understanding-steps-of-recursive-cte –
こんにちは@JuanCarlosOropeza私は再帰的なCTEを見つけました - 明らかにそれはRedshiftで使用できません。 – Julius
[無効な操作:WITH RECURSIVEはサポートされていません]の重複している可能性があります(https://stackoverflow.com/questions/45287067/invalid-operation-with-recursive-is-not-supported) – krokodilko