
私は仕事上でデータベースを扱っていて、タイトルのような処理を行う必要があるのですが、いかんせん方法がわからずネット上を検索しても同様だったためここで質問させていただきます。
質問点を簡単に説明いたしますと、
たとえば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で質問しましょう!
似たような質問が見つかりました
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
一部のカラムでdistinctし全てのカラムを取得
MySQL
-
[SQL]重複内容を持つデータから1件抽出かつ複数のカラムを表示したい
その他(データベース)
-
SQL文で複数の項目のうちひとつの項目のみの重複を排除する方法を教えてください。
MySQL
-
-
4
GROUP BYを行った後に結合したい。
Oracle
-
5
SQL Left Join で重複を排除するには
SQL Server
-
6
SELECT 文 GROUP での1件目を取得
SQL Server
-
7
SQLで部分的にGROUP BYしたいとき
Oracle
-
8
group byで指定したカラム以外のカラムの値を取得したい
PostgreSQL
-
9
単一グループのグループ関数ではありません。
Oracle
-
10
重複していないレコードの抽出方法について
MySQL
-
11
【SQL】他テーブルに含まれる値に合致する行を抽出
その他(データベース)
-
12
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
13
SELECT 文の NULL列は?
PostgreSQL
-
14
2つの項目が重複するレコードを抽出する方法はありますか?
MySQL
-
15
MAX関数を使ってからLEFT JOINしたいのですが・・
PHP
-
16
<SQL>重複しているデータの場合は最新の日時のものを取得したい
SQL Server
-
17
特定の列だけをGROUP BYしたい時
SQL Server
-
18
GROUP BYでエラーが発生
SQL Server
-
19
select文の実行結果に空白行を入れたい
MySQL
-
20
ループ処理の際、最後だけ,"をつけたくない"
Java
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLで特定の項目の重複のみを排...
-
リストビューの項目の内容を変...
-
fgetcsvでCSVを取得した際のnul...
-
初心者)DataGridViewの入力桁...
-
バッチでcsvファイルの指定のカ...
-
php mysql で WHERE句内に変数...
-
google formsを使ったタスク依...
-
COBOL プログラミング
-
DataViewで複数条件の...
-
Zend_DBを使ったselectで文字が...
-
ActiveReportの書き方
-
テキスト幅にあわせた表の作り...
-
条件一致セルの抽出について
-
ListViewのカラムの色の変更
-
COBOLについて
-
差し込み後、元データを変更し...
-
SELECT 文 GROUP での1件目を...
-
エクセルで最後の文字だけ置き...
-
複数の修飾を受ける名詞を否定...
-
誰か教えてください
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQLで特定の項目の重複のみを排...
-
バッチでcsvファイルの指定のカ...
-
php mysql で WHERE句内に変数...
-
リストビューの項目の内容を変...
-
COBOLについて
-
DataViewで複数条件の...
-
Zend_DBを使ったselectで文字が...
-
DataGridView 右詰め
-
テキスト幅にあわせた表の作り...
-
fgetcsvでCSVを取得した際のnul...
-
FormulaR1C1でSUMIF変数指定
-
COBOL プログラミング
-
初心者)DataGridViewの入力桁...
-
PHPでDBからデータを抽出してHT...
-
ListViewのカラムの色の変更
-
[WHS]定数宣言の際にリテラル文...
-
C# リストビューの値を取得
-
ActiveReportの書き方
-
VB.NETからAccessテーブルの文...
-
jQueryで、カラム幅を変更でき...
おすすめ情報