Общие > Базы данных
Выбор из двух таблиц
=Женек=:
Есть таблица A с полями number_e и FIO (фамилия человека и его уникальные номер).
Есть таблица B c полями number_e, TITLE и date (номер человека и название работы и срок исполнения).
Мне нужно выбрать из таблицы B все что сделал например "Иванов" (в таблице A есть запись с полем FIO "иванов") за последнюю неделю.
Как сделать? (Два варианта желательно для MySQL и InterBase)
for_i_0:
MySQL:
ИМХО
дату начало недели придется вычислить внешними средствами(языком программирования)
SELECT a.fio, b.title FROM `a`, `b` WHERE a.number_e = b.number_e && a.number_e = \'номер иванова\' && BETWEEN NOW() && \'результат вычисления\'
С наступающим ;)
Voron:
Тот ж вопрос мне надо выбрать из двух таблиц.
Делаю такой запрос но не работет (Вообще я его правильно делаю?):
$sql = mysql_query("select proect.name_org,
proect.cat,
proect.who,
proect.fio,
proect.dolznost,
proect.tel,
proect.facs,
proect.mail,
proect.www,
proect.adres,hod.id_org AS org2,hod.fio AS fio2,hod.dolznost AS dolznost2,
hod.tel AS tel2,hod.facs AS facs2,hod.mail AS mail2,hod.www AS www2,
hod.adres AS adres2 FROM proect,hod");
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)) {
for_i_0:
Voron
а где звязь между таблицами ?
читаем не отрываясь от монитора Народная самодеятельность — связи таблиц в MySQL
Voron:
Связь мне нужна была только к таблице proect/ По этому связи делал вот как между name_org и id_org что не так?
#
# Структура таблицы `client`
#
CREATE TABLE `client` (
`id` int(11) NOT NULL auto_increment,
`id_org` text NOT NULL,
`fio` text NOT NULL,
`dolznost` text NOT NULL,
`tel` text NOT NULL,
`facs` text NOT NULL,
`mail` text NOT NULL,
`www` text NOT NULL,
`adres` text NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=25 ;
# --------------------------------------------------------
#
# Структура таблицы `hod`
#
CREATE TABLE `hod` (
`id` int(11) NOT NULL auto_increment,
`id_org` text NOT NULL,
`chislo` text NOT NULL,
`zvonok` text NOT NULL,
`contact` text NOT NULL,
`rez` text NOT NULL,
`dop` text NOT NULL,
`sost` text NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=11 ;
#
# Структура таблицы `proect`
#
CREATE TABLE `proect` (
`id` int(11) NOT NULL auto_increment,
`name_org` text NOT NULL,
`cat` text NOT NULL,
`who` text NOT NULL,
`fio` text NOT NULL,
`dolznost` text NOT NULL,
`tel` text NOT NULL,
`facs` text NOT NULL,
`mail` text NOT NULL,
`www` text NOT NULL,
`adres` text NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=12 ;
Навигация
Перейти к полной версии