Зачастую требуется извлечь, к примеру ФИО автора из другой таблицы по ID, как это сделать?:)
Каким из ниже приведённых методов быстро, удобно, целесообразно пользоваться при работе с несколькими таблицами и почему? :)
Методы:
1. Несколько запросов.
2. Многотабличный запрос.
3. Вложенный запрос.
Для примера создадим простейшие таблицы:
CREATE TABLE tb1 ( id_tb1 INT(11) NOT NULL AUTO_INCREMENT, id_tb2 INT(11),
PRIMARY KEY (id_tb1));
CREATE TABLE tb2 (id_tb2 INT(11) NOT NULL AUTO_INCREMENT, name_tb2 TINYTEXT,
PRIMARY KEY (id_tb2));
Вариант 1: Использование нескольких запросов.
SELECT id_tb2 FROM tb1 // 1-й запрос
$myrow = mysql_fetch_assoc();
SELECT name_tb2 FROM tb2 WHERE id_tb2 = $myrow[id_tb2] // 2-й запрос
Вариант 2: Использовать многотабличный запрос
SELECT tb2.name_tb2 FROM tb1 JOIN tb2 USING(id_tb2);
Вариант 3: Использовать вложенный запрос
SELECT name_tb2 FROM tb2 WHERE id_tb2 = (SELECT id_tb2 FROM tb1);
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.