何らかの理由でSELECT DISTINCT
で重複を削除できません。DISTINCTは重複を削除しません
マイテーブル:
mysql> select * from kasutaja;
+----+---------+----------+---------------+
| id | eesnimi | perenimi | kasutaja_nimi |
+----+---------+----------+---------------+
| 1 | Juku | Juust | juku23 |
| 2 | Jaan | Jaanik | jann12 |
+----+---------+----------+---------------+
mysql> select * from riistvara;
+----+----------------+-----------+
| id | r_nimetus | seeria_nr |
+----+----------------+-----------+
| 1 | Latitude L2100 | 33333333 |
| 2 | Latitude L2110 | 44444444 |
+----+----------------+-----------+
mysql> select * from r_paigaldus;
+-------------+--------------+----------------+
| kasutaja_id | riistvara_id | paigalduse_aeg |
+-------------+--------------+----------------+
| 1 | 1 | 2010-01-01 |
| 1 | 2 | 2010-10-01 |
| 2 | 2 | 2010-01-01 |
| 2 | 1 | 2010-10-10 |
+-------------+--------------+----------------+
クエリ私が使用している:それはどのように見えるか
+---------------+---------+----------+----------------+-----------+--------------+
| kasutaja_nimi | eesnimi | perenimi | r_nimetus | seeria_nr |paigalduse_aeg|
+---------------+---------+----------+----------------+-----------+--------------+
| jann12 | Jaan | Jaanik | Latitude L2100 | 33333333 |2010-10-10 |
| juku23 | Juku | Juust | Latitude L2110 | 44444444 |2010-10-01 |
+---------------+---------+----------+----------------+-----------+--------------+
:
SELECT DISTINCT kasutaja_nimi, eesnimi, perenimi, r_nimetus, seeria_nr, paigalduse_aeg
FROM riistvara, kasutaja
JOIN r_paigaldus ON id = r_paigaldus.kasutaja_id;
は、クエリの結果は次のように見て終わる必要があります方法:
+---------------+---------+----------+----------------+-----------+----------------+
| kasutaja_nimi | eesnimi | perenimi | r_nimetus | seeria_nr | paigalduse_aeg |
+---------------+---------+----------+----------------+-----------+----------------+
| juku23 | Juku | Juust | Latitude L2100 | 33333333 | 2010-01-01 |
| juku23 | Juku | Juust | Latitude L2110 | 44444444 | 2010-01-01 |
| juku23 | Juku | Juust | Latitude L2100 | 33333333 | 2010-10-01 |
| juku23 | Juku | Juust | Latitude L2110 | 44444444 | 2010-10-01 |
| jann12 | Jaan | Jaanik | Latitude L2100 | 33333333 | 2010-01-01 |
| jann12 | Jaan | Jaanik | Latitude L2110 | 44444444 | 2010-01-01 |
| jann12 | Jaan | Jaanik | Latitude L2100 | 33333333 | 2010-10-10 |
| jann12 | Jaan | Jaanik | Latitude L2110 | 44444444 | 2010-10-10 |
+---------------+---------+----------+----------------+-----------+----------------+
あなたはmysql _or_ sql-serverについてお答えしますか?どちらの場合でも、「別個」はおそらく設計どおりに動作し、あなたの前提は正しくありません。 – Marvin
これらの結果は正しいです、あなたは 'r_nimetus'、' seeria_nr'と 'paigalduse_aeg'を見るときに別個の値の組み合わせを持っています。 'Latitude L2100'と' Latitude L2110'に '33333333'と' 44444444'と '2010-01-01'と' 2010-10-01'を組み合わせたものです。 – gmiley
これはお探しですか? http://stackoverflow.com/questions/6127338/sql-mysql-select-distinct-unique-but-return-all-columns – Marvin