
私は仕事上でデータベースを扱っていて、タイトルのような処理を行う必要があるのですが、いかんせん方法がわからずネット上を検索しても同様だったためここで質問させていただきます。
質問点を簡単に説明いたしますと、
たとえばAというテーブルがあって、
項目名1 項目名2 項目名3 項目名4
A あ ア 亜
A い ア 以
A う ア 宇
B え イ 江
B お イ 尾
上のような構造になっている場合に「項目名1」について重複している項目を排除し、結果として
項目名1 項目名2 項目名3 項目名4
A あ ア 亜
B え イ 江
上のようなデータを取得したいのです。
この時に、Aの重複を排除して取得するレコードは1~3行目のどれでもよいです。
また、データを取得する際には必ずそのレコードの「全項目」を取得したいのでDistinctはうまく使えませんでした。
どなたか詳しい方、方法を教えてくださると幸いです。回答お待ちしております。
No.3ベストアンサー
- 回答日時:
比較可能で一意性のある値をもてる項目6をテーブルに追加して、
select T.* from T, (select Item1,min(Item6) as Item6 from T group by item1) W where T.item6=W.item6;
――ってやるのが、一番手っ取り早いと思います。
他のところに影響がでないのであればですが。
oracleならrowidを使うとか、レコードの更新時刻を突っ込むとか。
No.4
- 回答日時:
Oracleだったらこれでもありかと。
select 項目1, 項目2, 項目3, 項目 from テーブル名 where rowid =
(select min(rowid) from テーブル名 group by 項目1)
No.2
- 回答日時:
SELECT
項目名1,
Min(項目名2) AS Alias,
項目名3,
項目名4
FROM
テーブル
GROUP BY
項目名1,
項目名3,
項目名4
この回答への補足
ご回答ありがとうございます。
教えていただいたSQL文についてですが、土日は会社が休みなため月曜日あたりに試してみたいと思います。
ところで、そのSQL文ではSelect文で項目名2に対してMin()を利用して1つの行を選択していますよね。
疑問なのですが、何故項目名1の重複を排除したいのに項目名2に対して条件を設定しているのでしょうか?
また、質問の補足ですが、
項目名1と同様に項目名2~4にも重複する値が存在することがあります(一意でない)。
引き続き回答よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) access フォーム 大分類、小分類 1 2022/08/11 18:03
- Excel(エクセル) ExcelVBAでリストの項目に必要数と同じ手配数を分配していくマクロを作りたいです。 1 2022/07/29 18:36
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) Countifよりも早く重複数をカウントする方法ありますか? 18 2022/07/04 13:39
- Visual Basic(VBA) Selenium.ChromeDriverの使い方について 7 2022/09/22 06:43
- Windows 10 ウィンドウズ11でスリープの設定は? 1 2022/05/26 02:41
- 電気・ガス・水道業 簡易専用水道の定期清掃について 3 2023/03/26 16:36
- その他(ソフトウェア) Googleフォーム、効率的な入れ方 2 2022/10/03 22:44
- Visual Basic(VBA) VBAで、1つのエクセルで、2つのシートからもう1つのシートに条件のある転記コードを教えてください。 1 2023/03/16 18:07
- Excel(エクセル) Formulaプロパティーを使ってセルに数式を組んだのですが簡潔にしたい。 3 2022/08/21 20:51
このQ&Aを見た人はこんなQ&Aも見ています
-
一部のカラムでdistinctし全てのカラムを取得
MySQL
-
SQL文で複数の項目のうちひとつの項目のみの重複を排除する方法を教えてください。
MySQL
-
[SQL]重複内容を持つデータから1件抽出かつ複数のカラムを表示したい
その他(データベース)
-
-
4
重複していないレコードの抽出方法について
MySQL
-
5
SQLで部分的にGROUP BYしたいとき
Oracle
-
6
GROUP BYを行った後に結合したい。
Oracle
-
7
exeファイルの中身を見ることは可能ですか?
フリーソフト
-
8
1列について重複行を除いて全列をSELECTするSQL文
MySQL
-
9
SELECT 文 GROUP での1件目を取得
SQL Server
-
10
【SQL】他テーブルに含まれる値に合致する行を抽出
その他(データベース)
-
11
2つの項目が重複するレコードを抽出する方法はありますか?
MySQL
-
12
CASE文のエラーについて
Oracle
-
13
ORA-01013のエラーについて経験のある方お願いします。
Oracle
-
14
SQLで、Join句で結合したテーブルにデータが無い場合について
SQL Server
-
15
Excelで数値→文字列変換で指数表示になったものをいっぺんに直したい
Excel(エクセル)
-
16
SELECTで1件のみ取得するには?
Oracle
-
17
SQL Left Join で重複を排除するには
SQL Server
-
18
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
19
列番号による項目の取得について
SQL Server
-
20
select insertで複数テーブルから値を取得したい
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLで特定の項目の重複のみを排...
-
バッチでcsvファイルの指定のカ...
-
COBOLについて
-
DataViewで複数条件の...
-
リストビューの項目の内容を変...
-
php mysql で WHERE句内に変数...
-
Sheet3から2つの条件でオートフ...
-
C#: ソースコードから16進数の...
-
初心者)DataGridViewの入力桁...
-
秀丸正規表現で数字を含まない...
-
差し込み後、元データを変更し...
-
フィルターかけた後、重複を除...
-
エクセルで最後の文字だけ置き...
-
エクセルの関数について教えて...
-
EXISTSを使ったDELETE文
-
SELECT 文 GROUP での1件目を...
-
INSERT文でフィールドの1つだ...
-
Oracleのデータ型、NUMBERについて
-
SQL文で、合計が0のレコードを...
-
SQLで列名を変数にできないでし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQLで特定の項目の重複のみを排...
-
バッチでcsvファイルの指定のカ...
-
php mysql で WHERE句内に変数...
-
リストビューの項目の内容を変...
-
DataViewで複数条件の...
-
COBOLについて
-
DataGridView 右詰め
-
初心者)DataGridViewの入力桁...
-
Zend_DBを使ったselectで文字が...
-
fgetcsvでCSVを取得した際のnul...
-
C# リストビューの値を取得
-
ListViewのカラムの色の変更
-
jQueryで、カラム幅を変更でき...
-
前回ご教授いただいたコードに...
-
COBOL プログラミング
-
VB6でActiveReport1.5Jを使って...
-
【VBA】特定の文字列を含む場合...
-
VB6リストボックスでの文字...
-
google formsを使ったタスク依...
-
TCPDF
おすすめ情報