<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Форум PHP-MyAdmin.RU &mdash; Создание запроса для выбора данных из нескольких таблиц по общему полю]]></title>
		<link>https://forum.php-myadmin.ru/viewtopic.php?id=1029</link>
		<atom:link href="https://forum.php-myadmin.ru/extern.php?action=feed&amp;tid=1029&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Создание запроса для выбора данных из нескольких таблиц по общему полю».]]></description>
		<lastBuildDate>Tue, 06 Jan 2009 17:43:58 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Создание запроса для выбора данных из нескольких таблиц по общему полю]]></title>
			<link>https://forum.php-myadmin.ru/viewtopic.php?pid=6603#p6603</link>
			<description><![CDATA[<p><strong>valerii</strong><br />Совершенно верно, это обычное объединение таблиц. Оба вариант совершенно равнозначны.<br /></p><div class="codebox"><pre><code>SELECT *
FROM `user` INNER JOIN `phone` ON `user`.`name` = `phone`.`name`
WHERE `user`.`name` = &#039;имя_юзера&#039;;</code></pre></div><p>В случае, если поле name является уникальным то объединить по нему можно любое количество таблиц, примерно так:<br /></p><div class="codebox"><pre><code>SELECT *
FROM `user` INNER JOIN (`phone`, `pc`) ON (`user`.`name` = `phone`.`name` AND `user`.`name` = `pc`.`name`)
WHERE `user`.`name` = &#039;имя_юзера&#039;;</code></pre></div><p>Однако обычно для объединения используется первичный ключ (primary key), поле id, например.</p>]]></description>
			<author><![CDATA[null@example.com (Hanut)]]></author>
			<pubDate>Tue, 06 Jan 2009 17:43:58 +0000</pubDate>
			<guid>https://forum.php-myadmin.ru/viewtopic.php?pid=6603#p6603</guid>
		</item>
		<item>
			<title><![CDATA[Re: Создание запроса для выбора данных из нескольких таблиц по общему полю]]></title>
			<link>https://forum.php-myadmin.ru/viewtopic.php?pid=6602#p6602</link>
			<description><![CDATA[<div class="quotebox"><cite>Hanut сказал:</cite><blockquote><p>Примерно так:<br /></p><div class="codebox"><pre><code>SELECT *
FROM `user` INNER JOIN `phone` ON `user`.`name` = `phone`.`name`;</code></pre></div><p>При пересечении имен полей в таблицах, может понадобиться задание алиасов, чтобы они были уникальными.</p></blockquote></div><p>Этот запрос выдает всех юзеров, которые совпадают по полю name.</p><p>Мне не совсем понятно зачем ставить оператор INNER JOIN </p><p>этот запрос можно было сформировать и вот так. <br />SELECT * <br />FROM impresoras, telephones WHERE impresoras.name=telephones.name</p><br /><p>кроме того, как можно преобразовать этот запрос только по указанному юзеру, например:<br />SELECT *<br />FROM `user` INNER JOIN `phone` ON `user`.`name` = `phone`.`name`=`имя_юзера`</p><p>??</p><br /><p>и как сделать такой же запрос где 3 и больше таблиц, например еще таблица <br />pc с 6-ю полями и таблица printers?</p>]]></description>
			<author><![CDATA[null@example.com (valerii)]]></author>
			<pubDate>Tue, 06 Jan 2009 16:55:36 +0000</pubDate>
			<guid>https://forum.php-myadmin.ru/viewtopic.php?pid=6602#p6602</guid>
		</item>
		<item>
			<title><![CDATA[Re: Создание запроса для выбора данных из нескольких таблиц по общему полю]]></title>
			<link>https://forum.php-myadmin.ru/viewtopic.php?pid=6601#p6601</link>
			<description><![CDATA[<p>Примерно так:<br /></p><div class="codebox"><pre><code>SELECT *
FROM `user` INNER JOIN `phone` ON `user`.`name` = `phone`.`name`;</code></pre></div><p>При пересечении имен полей в таблицах, может понадобиться задание алиасов, чтобы они были уникальными.</p>]]></description>
			<author><![CDATA[null@example.com (Hanut)]]></author>
			<pubDate>Tue, 06 Jan 2009 15:09:14 +0000</pubDate>
			<guid>https://forum.php-myadmin.ru/viewtopic.php?pid=6601#p6601</guid>
		</item>
		<item>
			<title><![CDATA[Создание запроса для выбора данных из нескольких таблиц по общему полю]]></title>
			<link>https://forum.php-myadmin.ru/viewtopic.php?pid=6599#p6599</link>
			<description><![CDATA[<p>Всем привет, перехожу к описанию проблемы.</p><p>Есть одна база, в ней - несколько таблиц.</p><p>есть таблица юзеры с полями: имя, телефон, почта, <br />есть таблица телефоны с полями: имя, серийник, модель, марка<br />поле имя - в каждой таблице, попадаются одинаковые, <br />допустим есть юзер вася иванов. он фигурирует как в первой так и во 2й таблице,</p><p>&nbsp; только в первой сказано что вот вася иванов у него телефон 222 и почта вася@рамблер. ру,<br />&nbsp; а во 2-й сказано что у васи телефон нокия модель 1101 с серийником хххх <br />&nbsp; задача стоит следующая: вывести ВСЕ данные по этому васе иванову.</p><br /><br /><p>Помогие сформировать запрос для выполнения этого действия. Также хочу сказать что оператор Union здесь не проходит, т.к. все таблицы имеют разное количество полей. Заранее большое спасибо</p>]]></description>
			<author><![CDATA[null@example.com (valerii)]]></author>
			<pubDate>Tue, 06 Jan 2009 14:16:35 +0000</pubDate>
			<guid>https://forum.php-myadmin.ru/viewtopic.php?pid=6599#p6599</guid>
		</item>
	</channel>
</rss>
