2015-12-06 3 views
1

Рассмотрим таблицу: MyTable (, б, в, г), где и б составляют первичный ключ.расчет по числу SQL-кортежей с участием составного первичного ключа

ли результат следующего запроса:

SELECT distinct(b) FROM myTable; 

быть такими же, как:

SELECT * FROM myTable; 

Другими словами, будет результирующий набор первого запроса имеют одинаковое количество кортежей как myTable? Я думаю, нет, потому что b может иметь не уникальные значения, тогда как только первичный ключ ab является уникальным.

+2

Да, вы ответили на свой вопрос – Mihai

+0

Спасибо, был уверен, что я ничего не понял. – coders

ответ

1

Нет, так как b не является основным ключом для myTable. Рассмотрим случай

| a | b | 
+---+---+ 
| 1 | 1 | 
| 2 | 1 | 
| 3 | 1 | 
| 4 | 1 | 
| 1 | 2 | 

в первом случае, вы будете иметь 2 кортежей (и только столбец B), в то время как во втором случае вы будете иметь 5 кортежей и все столбцы таблиц.

Смежные вопросы