Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 08.05.2013
Сообщений: 94
1

Выбор полей из двух таблиц

11.07.2014, 11:32. Показов 1772. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день! У меня есть несколько таблиц, но в данном запросе участвуют две - одна таблица содержит данные об авторах книг, вторая - перекресная - данные для книг об автре(ах) этой книги. Так вот из таблицы авторов мне надо выбрать имя, отчество, фамилию автора, а из перекресной таблцы количество авторов.
Текст запроса, который просто выбирает автора(ов) для данной книги:
MySQL
1
2
3
4
5
Select 
   `autor`.`name` AS `name1`, 
   `autor`.`patronymic` AS `name2`, 
   `autor`.`surname` AS `name3` 
From ((`autor` join `book_aut` on((`autor`.`id` = `book_aut`.`autor_id`))) join `books`) Where (`book_aut`.`book_id` = 1)
Как в этот же запрос добавить чтобы он выбрал з перекресной таблицы количество авторов для данной книги?

Добавлено через 48 минут
Когда написал запрос так:
MySQL
1
2
3
4
5
Select 
   `autor`.`name` AS `name1`, 
   `autor`.`patronymic` AS `name2`, 
   `autor`.`surname` AS `name3` 
From ((`autor` join `book_aut` on((`autor`.`id` = `book_aut`.`autor_id`))) join `books`), `book_aut`  Where (`book_aut`.`book_id` = 1)
Ругается, что альияс `book_aut` не уникальный. В чем здесь ошибка?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.07.2014, 11:32
Ответы с готовыми решениями:

Выбор из двух таблиц
Всем доброго времени суток! Помогите решить проблему) Есть две таблицы : таблица для фотоальбомов...

Выбор записей из двух таблиц
Здравствуйте. Есть таблица users. В ней есть поля id, login, email, etc. Есть еще одна таблица...

Выбор из двух таблиц по дате и имени
Коллеги, у меня есть две таблицы одинаковых по структуре (Группа 1 , Группа 2). Например вида: Id...

Запрос для сравнений значений полей двух таблиц и удаление записи, если значение не нашлось
приветствую, прошу помочь, голову ломаю уже как час, как можно правильно написать такой...

4
F́́́́́́́ŕ́́́́́́́é́́́ ́ak
259 / 223 / 109
Регистрация: 07.07.2014
Сообщений: 965
11.07.2014, 15:39 2
SQL
1
2
3
4
SELECT author.*, COUNT(books.*)
FROM author
LEFT JOIN books ON (books.author_id = author.id)
GROUP BY author.id
0
0 / 0 / 0
Регистрация: 08.05.2013
Сообщений: 94
11.07.2014, 16:00  [ТС] 3
Дело в том, что я так и до конца не понял эти волшебные джоины...
У меня две таблицы autor - в ней днные об авторе ФИО и т.д., вторая таблица - сводная в ней каждоуму АйДи книги идет одно или несколько АйДи авторов - имя второй таблицы book_aut.
И в том виде что Вы посоветовали - Не идет:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*)
FROM author
LEFT JOIN books ON (books.author_id = author.id)
GROUP BY auth' at line 1
Когда попробывал Руп бай исправить на GROUP BY autor_id
Выдает:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP BY autor_id' at line 1
0
1177 / 419 / 106
Регистрация: 31.03.2012
Сообщений: 1,145
12.07.2014, 04:48 4
Цитата Сообщение от Mykola Balanov Посмотреть сообщение
У меня две таблицы autor - в ней днные об авторе ФИО и т.д., вторая таблица - сводная в ней каждоуму АйДи книги идет одно или несколько АйДи авторов - имя второй таблицы book_aut.
На самом деле у тебя должно быть три таблицы, примерно так:
Код
АВТОРЫ
id_автора, имя
1 - карла
2 - фридрих
3 - вова
4 - ильф
5 - петров

КНИГИ
id_книги, название
1 - манифест
2 - 12 стульев
3 - Трое сбоку, и 2 назад
4 - Золотой теленок
5 - Капитал. Критика политической экономии

СВЯЗКА
id_автора, id_книги
1 = 1 (карла - манифест)
2 = 1 (фридрих - манифест)
3 = 3 (вова - Трое сбоку, и 2 назад)
4 = 2 (ильф - 12 стульев
4 = 4 (ильф - Золотой теленок
5 = 2 (петров - 12 стульев)
5 = 4 (петров - Золотой теленок)
1 = 5 (карла - Капитал. Критика политической экономии)
0
0 / 0 / 0
Регистрация: 08.05.2013
Сообщений: 94
08.08.2014, 19:03  [ТС] 5
У меня и есть три таблицы, ТАблица авторов, таблица книг и таблица автор-книга.
В любом случае это вопрос уже решен
0
08.08.2014, 19:03
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.08.2014, 19:03
Помогаю со студенческими работами здесь

Проверка на уникальность двух полей из двух связанных таблиц
Есть поле id_1 в таблице name1, а также поле id_2 в таблице name2. Таблица name1 имеет отношение к...

Совпадение двух полей из двух таблиц
Здравствуйте. Пожалуйста, подскажите код запроса для совпадения полей Дисциплина из таблиц Студент...

Слияние полей из двух таблиц
Доброго времени суток. Имеем две таблицы: A с единственным полем C и B с единственным полем S В...

Объединение полей из двух таблиц
Всем привет. Допустим у нас есть две таблицы T1 и Т2, с одинаковыми полями id и value. T1 id ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru