レコードを同じテーブルにコピーするのに問題がありますが、異なる値と2つの条件に基づいています。2つの異なる値を持つ行を同じテーブルにコピー
何これまでのところ私:
場所は、古いレコードのすべての詳細を持つ新しい新しいタイムスタンプを持つレコードと場所を更新されたときである私は何をしようとしていますINSERT INTO Userdetails
(ID, Username, Firstname, Surname, Location, TimeAs)
SELECT ID, Username, Firstname, Surname, Location, CURRENT_TIMESTAMP
FROM
Userdetails where Username = 'Harvard'; // and the latest date of the record
(ファーストネームなど。 。)がテーブルに挿入されますが、古いレコードは保持されます。
WHERE Username =を使用すると、クエリが2回実行されるたびにレコードの数が増えます。
サンプル日:
Username | Firstname | Surname | Location | Last Updated
Harvard David Beckham London 2017-05-08 12:11:00
Harvard David Beckham Turkey 2017-05-08 12:14:00
Stanton John Smith Paris 2017-05-08 11:24:00
// This would be the result of the query, With a different timeStamp and Location but keeping the old record
Harvard David Beckham Hong Kong 2017-05-08 12:20:00
私はそれが何をしたいどのようなユーザー名=「ハーバード」だけでなく、これが作成して、最新の時間だけではなく、ユーザー名を使用して見て、最新のレコードをコピーしています2は私が欲しいのは1だけではありません。
何か助けていただければ幸いです。
使用 'GETDATE()'関数を。 –
私はいくつかのテーブルデザインの変更を考えてみましょう。同じユーザー名、名字、姓、場所の値を何度も何度も繰り返し保存するのはなぜですか? – jarlh
サンプルデータと希望の結果を提供した場合、あなたの質問は(私にとっては)もっと意味があります。最初の段落と最後の段落の2番目は矛盾しているようです。 –