Новости | Документация | Download | Webboard | FAQ | Поиск | Контакты

Apache.RU - Webboard



Вернуться
Запрос из нескольких связанных таблиц (Elena) 26/06 - 14:34:46
      Re: Запрос из нескольких связанных таблиц (Евгений) 29/06 - 15:22:50
      Re: Запрос из нескольких связанных таблиц (Elena) 29/06 - 16:33:13
      Re: Запрос из нескольких связанных таблиц (Elena) 29/06 - 16:35:52
      Re: Запрос из нескольких связанных таблиц (Dinky) 29/06 - 22:58:27
      Re: Запрос из нескольких связанных таблиц (Евгений) 01/07 - 11:21:48
      Re: Запрос из нескольких связанных таблиц (Dinky) 02/07 - 20:11:16

> Original message text:
> From: > Elena - 26/06 - 14:34:46
> Subject:Запрос из нескольких связанных таблиц
> -----------------
> Помогите пожалуйста составить такой вот запрос:
> Есть четыре таблицы:
> 1) students - Имена студентов-ботаников и их личные данные, например:
> +------+---------+-------+
> | id | surnane | name |
> +------+---------+-------+
> | 1 | Petrov | Alex |
> | 2 | Sidorov | Petr |
> | 3 | Ivanov | Vasyl |
> +------+---------+-------+
> 2) praktics - Данные о выездах их на практику, например:
> +------+-----------+----------+------------+------------+
> | id | flower_id | place_id | date_begin | date_end |
> +------+-----------+----------+------------+------------+
> | 1 | 2 | 3 | 2004-06-01 | 2004-06-03 |
> | 1 | 1 | 3 | 2004-06-03 | 2004-06-05 |
> | 2 | 3 | 1 | 2004-06-01 | 2004-06-05 |
> +------+-----------+----------+------------+------------+
> Это значит, что студент №1 (т.е. Петров) изучал растение №2 в местности №3 с 01.06.2004 по 03.06.2004. и т.д.
> 3) flowers - таблица с названиями растений, например:
> +-----------+----------+
> | flower_id | flower |
> +-----------+----------+
> | 1 | Krasavka |
> | 2 | Kaktus |
> | 3 | Lopuh |
> +-----------+----------+
> 4) place - названия местностей, например:
> +----------+-----------------------+
> | place_id | place |
> +----------+-----------------------+
> | 1 | Karabi yayla |
> | 2 | Dolgorukovskaya yayla |
> | 3 | Nikitskaya yayla |
> +----------+-----------------------+
> _________________________________________________
> Теперь вопрос, как мне выбрать фамилии студентов, которые изучали Lopuh на Karabi yayla.
> Я могу сделать такой запрос:
> SELECT DISTINCT surname, name FROM students
> LEFT JOIN praktics USING (id)
> WHERE flower_id=3 AND place_id=1;
>
> Но как мне сделать запрос, чтобы можно было прямо писать
> ... WHERE flower='Lopuh' AND place LIKE 'Karabi%';
> ?
>


From: Elena - 29/06 - 16:35:52
Subject:Запрос из нескольких связанных таблиц
-----------------
Интересно, HTML воспринимается?
<table border=1>
<tr class="header">
<th>table</th>
<th>type</th>
<th>possible_keys</th>
<th>key</th>
<th>key_len</th>
<th>ref</th>
<th>rows</th>
<th>Extra</th>
</tr>
<tr>
<td>place </td>
<td>range </td>
<td>place </td>
<td>place </td>
<td>31 </td>
<td>NULL </td>
<td>1 </td>
<td>Using where; Using index; Using temporary </td>
</tr>
<tr>
<td>flowers </td>
<td>ref </td>
<td>flower </td>
<td>flower </td>
<td>21 </td>
<td>const </td>
<td>1 </td>
<td>Using where; Using index </td>
</tr>
<tr>
<td>praktics </td>
<td>index </td>
<td>NULL </td>
<td>praktics </td>
<td>17 </td>
<td>NULL </td>
<td>3 </td>
<td>Using where; Using index </td>
</tr>
<tr>
<td>students </td>
<td>eq_ref </td>
<td>PRIMARY </td>
<td>PRIMARY </td>
<td>4 </td>
<td>praktics.id </td>
<td>1 </td>
<td> </td>
</tr>
</table>



[Это сообщение - спам!]

Последние сообщения из форума

 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
15833




  Copyright Apache.ru © 1999-2017, All Rights Reserved Разработка сайта: Inside.ru  
  РЕКЛАМА НА САЙТЕ: |