この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 13382|答える: 1

[出典] SQLはテーブル内のすべての重複レコードデータを見つけます

[リンクをコピー]
掲載地 2018/09/15 9:55:18 | | |
1. 面接中に問題に直面しました。つまり、idとnameの2つのフィールドを持つテーブルを書き、名前が重複するすべてのデータをクエリし、次に以下の項目をリストアップすることです。


2. すべてのデータをグループ化のために照会した後、重複データの重複回数のクエリデータを以下に示します。


3. 以下は他のレコードの結果を見るためのもので、現在は以下の一覧を示します:重複レコードのクエリおよび削除方法の完全なリスト


1. テーブル内の冗長な重複レコードを見つけ、重複レコードは単一のフィールド(peopleId)に基づいて判断されます。


2. テーブル内の冗長な重複レコードを削除し、重複レコードは単一のフィールド(peopleId)に基づいて判断され、最小のロイドを持つレコードだけが残ります


3. テーブル内の冗長重複レコード(複数フィールド)を探す


4. テーブル内の重複レコード(複数のフィールド)を削除し、最小のrowidを持つレコードだけを残す


5. テーブル内の冗長な重複レコード(複数のフィールド)を見つけ、最小のロイド(記録)を含まない


(2)

例えば
表Aには「name」というフィールドがあります。
また、「名前」値が異なるレコード間で同じになることもあります。
次に、テーブル内のレコード間で「名前」値が重複するアイテムをクエリする必要があります。


性別も同じ場合は以下の通りです。


(3)

方法1

方法2「重複レコード」には重複レコードの意味が2つあります。1つは完全に重複したレコード、すなわちすべてのフィールドが重複しているレコード、もう1つは重要なフィールドの重複部分が重複しているレコード(例えば名前フィールドが重複している)で、他のフィールドは必ずしも重複していないか、すべての重複を無視できることを意味します。


1. 最初の反復タイプについては、比較的簡単に解いて使えます



重複レコードなしで結果セットを入手できます。

もしテーブルが重複レコードを削除する必要がある場合(1つの重複レコードが保持されます)、

削除は以下の通りです



この重複はテーブル設計の不備により起こり、一意のインデックス列を追加することで解決できます。


2. この種の重複問題は通常、重複レコードの最初のレコードを保持する必要があり、操作方法は次の通りです:NameとAddressという重複フィールドが存在すると仮定すると、これら2つのフィールドの一意結果セットが必要です



最後の選択では、繰り返し表示されないNameとAddressの結果セットを受け取ります(ただし、実際に書き込む際にselect節に書くことができる追加のautoIDフィールドがあります)


(4)

クエリは重複されています








先の:{"error_msg": "IAM認証に失敗"}
次に:MSSQLは現在の接続やオープントランザクションを監視します
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com