Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Составление SQL-запросов > ошибка при выборке |
Автор: AsyncCallback 1.3.2010, 05:55 | ||||
Опишусь подробнее есть 2 таблице book и author с полями book(id,name,author_id) author(id,name) id везде PK id_author связанн с id book так вот при запросе вида
коичество результатов стока скока записеу в author а запрос вида
возрашает правильный результат так вот вопрос у меня второй запрос правильный или просто где то ошибка в связях или проктирования? P.S. когда составлял вопрос думал что первый правильный! |
Автор: Deniz 1.3.2010, 06:58 |
С точки зрения правильности SQL оба запроса правильные, с точки зрения логики: 1 запрос делает декартово произведение двух таблиц (у книги будут все авторы), во 2-ом запросе указан ключ соединения двух таблиц "book.author_id=author.id" и он выдает правильный результат. |
Автор: Deniz 1.3.2010, 08:27 | ||
Читайте что-нибудь по базам данных. |
Автор: AsyncCallback 1.3.2010, 08:40 | ||
Читаю, просто то что, читал, такой случай не был описан! P.S. можно ли маленькое объяснение этому?
|
Автор: Deniz 1.3.2010, 09:09 |
а что объяснять? Каждой записи из 1 таблицы будет поставлена каждая запись 2 таблицы. |
Автор: AsyncCallback 1.3.2010, 12:25 | ||
О и точно, он же по всем строкам проходится второй таблице и все их выдвет=) Добавлено через 2 минуты и 19 секунд Deniz, Пасиб за пояснение! |