Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 07.04.2015, 09:45
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

А что рассказывать, если бы эти таблицы существовали сами по себе, тогда да, претензий нет, но ведь на эти таблицы будут ссылаться записи, в которых и описаны бренды/страны, и это могут быть отношения как многие к одному. Вот чтобы связать эти отношения таблицы записей с таблицами Бред<->Страна и нужна внешняя таблица связей между ними.
Ответить с цитированием
  #22 (permalink)  
Старый 07.04.2015, 10:01
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

Сообщение от laimas
Вот чтобы связать эти отношения таблицы записей с таблицами Бред<->Страна и нужна внешняя таблица связей между ними.
Я тебе на схеме показал как делается эта связь. Две таблицы и они между собой связаны.
Ответить с цитированием
  #23 (permalink)  
Старый 07.04.2015, 10:07
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

А я, как Диоген из бочки , предлагаю сделать выборку записей в которых есть бренды А, Б и В, и/или страны А, Г и М.
Ответить с цитированием
  #24 (permalink)  
Старый 07.04.2015, 10:16
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

Сообщение от laimas
предлагаю сделать выборку записей в которых есть бренды А, Б и В, и/или страны А, Г и М
Все это осуществимо.
Третья таблица будет нужна если данные в полях "Название" лишаться уникальности в пределах своих таблиц, чего у Тса и не предвидеться...

Если это не так - пусть он об этом напишет.

Последний раз редактировалось ksa, 07.04.2015 в 10:18.
Ответить с цитированием
  #25 (permalink)  
Старый 07.04.2015, 10:18
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Бесспорно, но вопрос в том какой кровью это осуществляется.
А если я упрощу условие и предложу вам сделать выборку только по стране/странам? В этом случае выборка с вашим представлением данных станет проще или нет?
Ответить с цитированием
  #26 (permalink)  
Старый 07.04.2015, 10:23
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

Сообщение от laimas
А если я упрощу условие, и предложу вам сделать выборку только по стране/странам? В этом случае выборка с вашим представлением данных станет проще или нет?
Будет нечто такое

Select
   *
From
   таблица_брендов
Where
   Код_страны IN(
       Select id From таблица_стран Where Название_страны IN('страна1','страна2', ...)
   )
Ответить с цитированием
  #27 (permalink)  
Старый 07.04.2015, 10:23
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

Повторюсь...
Сообщение от ksa
Третья таблица будет нужна если данные в полях "Название" лишаться уникальности в пределах своих таблиц, чего у Тса и не предвидеться...

Если это не так - пусть он об этом напишет.
Ответить с цитированием
  #28 (permalink)  
Старый 07.04.2015, 10:31
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Select
*
From
таблица_брендов
Where
Код_страны IN(
Select id From таблица_стран Where Название_страны IN('страна1','страна2', ...)
)

Не пойдет, это выборка из таблицы брендов, а не из таблицы ссылающейся на указанные страны.

В том то и проблема - как выгоднее построить связи, а это да, зависит от задач работающих с ними.
Ответить с цитированием
  #29 (permalink)  
Старый 07.04.2015, 11:03
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

Сообщение от laimas
это выборка из таблицы брендов, а не из таблицы ссылающейся на указанные страны
Ты определись что тебе нужно показать в итоге...
Ответить с цитированием
  #30 (permalink)  
Старый 07.04.2015, 11:16
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

SELECT
	*
FROM
	table_brand as br
	LEFT JOIN table_country AS cn ON cn.id=br.codeCountry

laimas, далее делай любые условия... Указывай любую последовательность столбцов...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простая регулярка PashPP Общие вопросы Javascript 21 15.08.2012 23:23
Простая защита на сайт any.zicky Общие вопросы Javascript 4 07.06.2012 00:59
простая форма авторизации sedoyksa Общие вопросы Javascript 5 01.10.2011 22:29
Как написать это грамматно, простая функция Harvey jQuery 3 13.09.2011 12:30
Регулярка на дробные числа shkarbatov Javascript под браузер 14 29.07.2011 01:05