IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Reply to this topicStart new topic
> БД, нее.. это не ближе-дальше
4YBAK
сообщение 12.10.2011, 16:33
Сообщение #1


Бабоукладчег
*******

Группа: Форумчанин
Сообщений: 13758
Регистрация: 5.10.2006
Вставить ник
Цитата
Пользователь №: 3181
Страна:
Пол:



Мож кто-нить волочет в базах данных?

Есть таблица, например Работники.
Там поля: ФИО Должность Оклад и несколько других.
Например там такая строка есть:
Чувак Расписдяй и другие значения (оклад не заполнен)

И еще таблица Оклады
В ней поля Должность Оклад
К примеру, строки в ней такие:
Сантехник 20000
Слесарь 25000
Токарь 22000
Расписдяй 30000

Как сделать, штоб в таблицу Работники в поле Оклад подтягивался оклад из второй таблицы в зависимости от должности?
Лучше на примере access. Можно на примере любой БД, допру.
В экселе-то просто. Там функция ВПР - и все дела. А в базе как?





--------------------
В поисках своего пути...


Выращенное зверье тут http://dragcave.net/user/4YBAK
Бесплатные уроки гитары тут: http://nagitarke.ru
Go to the top of the page
 
+Quote Post
ПикаПикаПикачу
сообщение 12.10.2011, 17:11
Сообщение #2


Новичок
*

Группа: Форумчанин
Сообщений: 35
Регистрация: 9.9.2011
Вставить ник
Цитата
Пользователь №: 1008895
Страна:
Пол:



Это надеюсь 1Ска?

нечто типа запроса

Выбрать
Работники.ФИО,
Работники.Должность,
Оклады.Оклад // Оклады должность не надо, она равна работники.должность
Из
Работники
Левое Соединение // т.е. для каждого работника берем из таблицы оклады соотв значение
Оклады
По Работники.Должность = Оклады.Должность

АПД Ну, это если программить можно. Соединение таблиц базы данных при помощи запроса

Сообщение отредактировал ПикаПикаПикачу - 12.10.2011, 17:14
Go to the top of the page
 
+Quote Post
Водар Паветра
сообщение 12.10.2011, 17:40
Сообщение #3


эээ, не надо мне ммм
Иконка группы

Группа: Супер Гуру
Сообщений: 4864
Регистрация: 11.9.2006
Вставить ник
Цитата
Из: Belarus-USA
Пользователь №: 3095
Страна:
Пол:



SQL:

SELECT ФИО, Должность
FROM Работники
JOIN Оклады
ON Работники.Должность=Оклады.Должность


--------------------
_____________________________________________
Time passes, the place I search for -
It's still just a longing inside,
Something strange and unknown to me -
To be grounded somewhere, no longer
A stormbird in shaking and howling...
_____________________________________________

     
Go to the top of the page
 
+Quote Post
4YBAK
сообщение 12.10.2011, 17:51
Сообщение #4


Бабоукладчег
*******

Группа: Форумчанин
Сообщений: 13758
Регистрация: 5.10.2006
Вставить ник
Цитата
Пользователь №: 3181
Страна:
Пол:



нее! не выборку делать.
а ссылку!
штоб в таблице Работники присваивалось значение из таблицы Оклады.

кароче, че нужно:
1) запрос select * from Работники where ФИО="Чувак" должен выдавать Чувак Распиздяй 30000.
2) если в таблице Оклады мы поменяем для должности Расписдяй 30к на 40к, то запрос из пункта 1 будет выдавать Чувак Распиздяй 40000

так мона?

Сообщение отредактировал 4YBAK - 12.10.2011, 17:52


--------------------
В поисках своего пути...


Выращенное зверье тут http://dragcave.net/user/4YBAK
Бесплатные уроки гитары тут: http://nagitarke.ru
Go to the top of the page
 
+Quote Post
Водар Паветра
сообщение 12.10.2011, 18:10
Сообщение #5


эээ, не надо мне ммм
Иконка группы

Группа: Супер Гуру
Сообщений: 4864
Регистрация: 11.9.2006
Вставить ник
Цитата
Из: Belarus-USA
Пользователь №: 3095
Страна:
Пол:



Как ты получишь "Чувак Распиздяй 30000", если у тебя в запросе таблица окладов вообще не фигурирует?

SELECT * FROM
(SELECT ФИО, Должность
FROM Работники
JOIN Оклады
ON Работники.Должность=Оклады.Должность)
WHERE ФИО="Чувак"

Ответ на второй вопрос: да

Сообщение отредактировал Водар Паветра - 12.10.2011, 18:12


--------------------
_____________________________________________
Time passes, the place I search for -
It's still just a longing inside,
Something strange and unknown to me -
To be grounded somewhere, no longer
A stormbird in shaking and howling...
_____________________________________________

     
Go to the top of the page
 
+Quote Post
4YBAK
сообщение 12.10.2011, 18:52
Сообщение #6


Бабоукладчег
*******

Группа: Форумчанин
Сообщений: 13758
Регистрация: 5.10.2006
Вставить ник
Цитата
Пользователь №: 3181
Страна:
Пол:



Цитата(Водар Паветра @ 12.10.2011, 19:10) *
Как ты получишь "Чувак Распиздяй 30000", если у тебя в запросе таблица окладов вообще не фигурирует?

дык в этом и суть штоб в табло Работники подтягивались данные из табла Оклады автоматом!
Кароче, штоб в табле работники поле оклад ваще нередактируемое было, а заполнялось токо из таблицы Оклады

Сообщение отредактировал 4YBAK - 12.10.2011, 18:53


--------------------
В поисках своего пути...


Выращенное зверье тут http://dragcave.net/user/4YBAK
Бесплатные уроки гитары тут: http://nagitarke.ru
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия   Архив форума Сейчас: 18.7.2025, 5:04
youtube-канал об отношениях Rambler's Top100