• ベストアンサー

重複したものをのぞいて、レコード数を取得したい

MySQL4.1で、値で重複したものは除いて、レコード数を取得したいのですが、どうしたら出来るでしょうか? 【例】 A| -- a| b| c| d| a| b| 4の値が欲しい

質問者が選んだベストアンサー

  • ベストアンサー
noname#8342
noname#8342
回答No.1

SELECT Count(A) AS Alias FROM (SELECT DISTINCT A FROM Table) AS Alias

vitadai
質問者

お礼

MySQLのバージョンが低かったようで、アップデートしたら出来ました。 ありがとうございます。

vitadai
質問者

補足

レスありがとうございます。 しかし、それだとエラーが出てしまいます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • レコード数を重複を省いて取得するには

    テーブルAccessにあるフィールドuser_idの値が$userであるフィールド数を取得したいのですが、 同テーブルのフィールド ip もしくは uid の値が重複しているものを省いた数を取得したいです。 ipとuidの値が他のフィールドに存在していないuser_idだけカウントしたいです。 このようなカウントをすることは可能でしょうか。 クエリ文をご教示頂けると幸いです。 よろしくお願い致します。

  • SELECT/別テーブルのレコード数も取得したい

    ■環境 ・MySQL ■前提 ・テーブルA … idカラム ・テーブルB … A_idカラム ■やりたいこと ・テーブルAデータを取得する際、テーブルAレコードに応じて、テーブルB「A_idカラム」の数(レコード数)も取得したい ■取得イメージ例 ・テーブルA「全カラム」、「count」カラム ※「count」カラム … テーブルBにある「A_idカラム」の数 ■知りたいこと ・どこにも存在しないこの「count」カラムはどうやって作成したら良いでしょうか? ・全体のSQL文

    • ベストアンサー
    • MySQL
  • 重複レコードを高速で取得するSQL

    Access(mdb)から約2万件レコードのあるテーブルがあるとします。 列数は20ほど。 その中から、3つの列において重複しているレコードを取得したいのですが、 高速に取得する方法はありますでしょうか? (VB.NETで、重複レコードをユーザーに示す処理を作成したいのです) 以下のSQLを試したところ、1分以上時間がかかってしまいました。 ----------------------------- SELECT * FROM テーブルA table1 WHERE EXISTS ( SELECT * FROM テーブルA table2 WHERE table1.列A = table2.列A   table1.列B = table2.列B   table1.列C = table2.列C GROUP BY table2.列A HAVING COUNT(table2.列A) > 1 ) ----------------------------- アドバイスをお願いします。

  • 一部重複しているレコードの削除

    一部だけ重複しているレコードの削除について教えてください。 検索したのですが、よくわかりませんでした。 f1       f2       f3       f4        f5 -----    -----    -----    -----     ----- 1       2005     T      20       A 2       2007     S      20      B 3       2003     S      20      C 4       2008     T      30      A 5       2005     T      30      C 6       2008     N      30      B 7       2007     T      20      D というようにあったとき、f3とf4が同じであった場合はf2の値がもっとも大きいもの一つを残して他のレコードを削除するというSQL文を考えています。 つまりこの場合にはf1が2,4,7のものを残したいのです。 この時のSQL文はどのようになるのでしょうか。 よろしくお願いします。

    • ベストアンサー
    • MySQL
  • ACCESS2000 SQL 最大レコード数

    こんにちは。 [TBL] キーは A B DD Cです。 A B DD C E 1 2 21 7 ..... 1 2 21 8 ..... 1 2 22 3 ..... 1 2 22 8 ..... 1 2 22 9 ..... 3 1 2 1 ..... 3 3 4 2 ..... から、A=1 B=2の数の最大レコード数をカウントしたいです。 但し、DDは同じ数なことが条件です。 上でいうと、D=22のものが3つあり、D=21のものが2つあるので、最大は3ということで、3を取得したいです。 select count(*) FROM TBL where A=1 AND B=2 GROUP BY C に近い感じだとはおもうのですが。 よろしくお願い致します。

  • 2つの項目が重複するレコードを抽出する方法はありますか?

    MySQL4.1で既存データに対し複合キーを新しく設定したいのですが、 ALTER TABLE `test` ADD PRIMARY KEY (`a`,`b`) としても重複データが存在する為、作成できませんでした。 10万件あるテーブルから重複するレコードを手動で削除したいのですが、aとbが重複しているレコードだけ抽出するSQL文はありますでしょうか?

    • ベストアンサー
    • MySQL
  • エクセルのA列とB列で重複するレコードのみを抽出して別の列に表示させた

    エクセルのA列とB列で重複するレコードのみを抽出して別の列に表示させたい。 エクセルのA列に約1,000行くらいのデータが有ります。 このA列内で重複レコードがあります。 B列に約1,000行くらいのデータが有ります。 B列内でも重複レコードが有ります。 この条件の中で (1)A列にもB列にあるデータすべて (2)A列にしかないデータすべて (3)B列にしかないデータすべて を抽出したいのですが、どんな方法がありますか? それで (1)をC列 (2)をD列 (3)をE列 に並べて表示させたいです。 さらに抽出されたデータで重複レコードの場合は1件のみで表示したいです。 複数の操作を繰り返すのではなく C,D,E列に式を入れるだけで済ませる事は可能でしょうか? よろしくお願いします。 例    A   B    C   D   E 1-001-002--001--004--007 2-002-002--002--006--008 3-001-001--005--010 4-005-007 5-001-005 6-004-005 7-004-008 8-010-007 9-006-007 A列には001が3個、002が1個、005が1個有ります。 B列には001が1個、002が2個、005が2個有ります。 A列にもB列にも有るのは、001と002と005ですから これがC列に表示されます。 でそれぞれA列にもB列にも複数有りますが、1個として判定なので よって、C列には 001 001 001 001 002 002 005 005 と表示ではなく 001 002 005 と表示したい。 次にD列はA列に有る物だけですから 004 006 010 となります。B列には004は2個有りますが同じ値なので 004 004 006 010 では無く004は1個の表示です。 E列はB列のみのデータなので 007 008 です。 同じくB列には007が3個有りますが1個ともなします。 007 007 007 008 では無く 007 008 です。

  • 前後のレコードを取得する

    SQL初心者です。 以下のようなテーブルがある時に、 -------- X Y Z -------- 1 c E 2 a C 3 d B 4 b A 5 e D -------- 「Xが3のレコードの、Zで昇順ソートした時の前後のレコードを取得する」 ということをしたいのですが、見当もつかずに困っています。 どんな些細なことでもよいので、何かご存知の方がいたら、アドバイス願えないでしょうか。 よろしくお願いします、

  • 重複レコードを数えないでレコード数を求める

    出席者データがあり、出席者数を調べたいのですが、 同じ人が何回か出席しているため、 正確な人数が把握できないのですが、 関数で重複レコードは数えないで済むようなものはないでしょうか。

  • 2つ目のレコードの値を取得するには?

    こんにちは。いつもお世話になりっぱなしです。 今回は、あるテーブルの2つ目以降のレコードの値を取得 できないかなぁと思って質問しました。 テーブルAにBというフィールドがあります。 その中にはア、イ、ウ・・・・とレコードがあるとした場合、 1つ目のレコードは Dfirst("B","A")で取得できますが、 2つ目のレコードはどうやって取得すればいいのでしょうか? 関数で出来れば最高なんですが、無理なようでしたら 別の方法でも構いません。 皆さんのお力をお貸しください。 よろしくお願いします。