Выборка данных из реляционных таблиц

SparcoCF

Новичок
Выборка данных из реляционных таблиц

Всем привет мужики. Только не ругайтесь а помогите понять :)
Вот в чем дело, вопрос очень нубовский но что поделать просветите меня. И так суть вопроса в следующая:
Объясните пожалуйста как работать именно с реляционными таблицами ? Припустим у меня есть две таблички в базе:
Первая Profesii
Prof Key
Инженер 1
Рабочий 2

Вторая таблица Sotrudniki
Key Sotrudnik
1 Ivanov
1 Petrov
2 Fomin
2 Valuev

Теперь мне нужно вывести все данные о сотрудниках делаю следующий запрос
PHP:
$result = mysql_query("SELECT * FROM Profesii, Sotrudniki ");

while($row = mysql_fetch_array($result)) 
  {
  echo "<tr>";
  echo "<td>" . $row['Sotrudnik'] . "</td>";
  echo "<td>" . $row['Key'] . "</td>";
  echo "</tr>";
  }
По логике должен быть следующий результат:

Ivanov Инженер
Petrov Инженер
Vasilev Рабочий
Valuev Рабочий

Подскажите как правильно делать запрос для того что бы полностью раскрыть (понять) суть реляционных таблиц.
И очень прошу не давайте ссылок на сторонние ресусры, мануалы, книги .. поскольку я уже их очень много прочел, пересмотрел и нет нигде наглядного примера работы с такими таблицами, если есть то очень сложные и не понятный. Большая просьба к спецам объясните своими словами как попроще и моей благодарности не будет предела :)
 

SparcoCF

Новичок
Mr_Max
Спасибо что погуглили за меня :) отжог реальный :)
первая же ссылка: http://www.phpclub.ru/detail/article/2000-12-06
но вы сами же видите как там все сложно(для меня) там не представлена сама структура таблиц а просто запросы неизвестно чего к чему со сложными ключами SELECT sites.id, url, sites.name as sitename, rubs.name as rubsname,
rubs.id as rub_id FROM sites, rubs

А у меня пример простенький и понятный. Пожалуйста дорогие спецы .. помогите составить запрос по моих таблицах .. и тогда я сразу все пойму.

От смотрите я сам врач, и когда ко мне приходит пациент или на форуме медицины, меня что то спрашивают я же не даю им ссылку на Энциклопедию Практикующего врача :) а говорю что и как нужно сделать ... а вы врачи в этой сфере .. поэтому прошу помощи.
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
SparcoCF
В данном форуме не дают готовых ответов.
Вся необходимая информация для достижения результата у тебя есть.
Тебе нужен запрос с WHERE
 

SparcoCF

Новичок
Mr_Max
От смотрите я сам врач, и когда ко мне приходит пациент или на форуме медицины, меня что то спрашивают я же не даю им ссылку на Энциклопедию Практикующего врача а говорю что и как нужно сделать ... а вы врачи в этой сфере .. поэтому прошу помощи.


Ладно пусть будет с WHERE
$result = mysql_query("SELECT * FROM Profesii, Sotrudniki WHERE Key>0 ");

но это ведь не правильно. Неужели так сложно человеку помочь ?
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Все описано в подразделе "Как надо".
 

SparcoCF

Новичок
Mr_Max
Делаю вот так:
$result = mysql_query("SELECT Sotrudniki.Sotrudnik, as SS, Profesii.Key as PK FROM Sotrudniki, Profesii WHERE Sotrudniki.Key=Profesii.Prof

Так правильно или нет ?
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Нет.

-~{}~ 20.05.09 20:36:

1. Запрос с синтаксической ошибкой.
2. Связываешь неправильно
 

SparcoCF

Новичок
Уже понял должно быть вот так:
$result = mysql_query("SELECT Sotrudniki.Key, Profesii.Prof as profesia FROM Sotrudniki, Profesii WHERE Sotrudniki.Key=Profesii.Key");
 

Kazim

Новичок
SparcoCF
Тебе нужно связать эти две таблицы. Добавь в Sotrudniki новое поле и при сохранении сотрудника пиши в это поле Profesii.Key.
А в условии добавь Sotrudniki.новоеполе=Profesii.Key
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Kazim
1. Вопрос решен.
2. Поле у него есть. Читай внимательнее.
 

Kazim

Новичок
Mr_Max
Я не заметил почему то привязки Sotrudniki к Profesii там вроде только автоинскрименты в обоих таблицах
 
Сверху