CREATE TABLE warehouse (
ID int(11) NOT NULL AUTO_INCREMENT,
name_ID int(11) default NULL,
subname_ID int(11) default NULL,
reserved varchar(20) default NULL,
price varchar(20) default NULL,
price_of_sale varchar(20) default NULL,
presence varchar(20) default NULL,
notes varchar(200) default NULL,
PRIMARY KEY (ID),
FOREIGN KEY (name_ID) REFERENCES name (ID),
FOREIGN KEY (subname_ID) REFERENCES subname (ID)
CREATE TABLE name (
ID int(11) NOT NULL AUTO_INCREMENT,
name varchar(50) default NULL,
unit_ID int(11) default NULL,
category_ID int(11) default NULL,
PRIMARY KEY (ID),
FOREIGN KEY (unit_ID) REFERENCES unit (ID),
FOREIGN KEY (category_ID) REFERENCES category (ID)
)";
Мне нужно сделать запрос, который выберет все строки склада (1 таблица), в котором категория равна "БОЛТЫ", например.
Как правильно сделать? Пробую что-то на подобие:
$q="SELECT warehouse.* FROM warehouse, name WHERE name.category_ID = '1' ORDER BY 'name_ID' ASC, 'subname_ID' ASC"; - возвращает абсолютно все строки.
И это я ещё упростил, поставил конкретный ИД-номер категории. А если сделать поиск по названию категории, тогда как это должно правильно выглядеть?!?!
Жду ответов, заранее всем спасибо.
Успехов ВСЕМ!
Спустя 6 минут, 26 секунд (6.06.2007 - 09:38) md5 написал(а):
блин ты смысл своего запроса понимаешь???
где связь между таблицей 1 и таблицей 2 ???
SELECT *
FROM `warehouse`
WHERE `parent_id`=1
в первую тоблицу добавь parent_id который и будет указывать на принадлижание к соотв. категории
где связь между таблицей 1 и таблицей 2 ???
SELECT *
FROM `warehouse`
WHERE `parent_id`=1
в первую тоблицу добавь parent_id который и будет указывать на принадлижание к соотв. категории
Спустя 33 минуты, 6 секунд (6.06.2007 - 10:11) DizeL написал(а):
Цитата(md5 @ 6.6.2007, 6:38) [snapback]22024[/snapback]
блин ты смысл своего запроса понимаешь???
где связь между таблицей 1 и таблицей 2 ???
SELECT *
FROM `warehouse`
WHERE `parent_id`=1
в первую тоблицу добавь parent_id который и будет указывать на принадлижание к соотв. категории
где связь между таблицей 1 и таблицей 2 ???
SELECT *
FROM `warehouse`
WHERE `parent_id`=1
в первую тоблицу добавь parent_id который и будет указывать на принадлижание к соотв. категории
Всё я чётко понимаю! или не понимаю...
Что за парент_ИД??? У меня в таблице склада поле name_ID - внешний ключ на таблицу товаров (name).
В таблице товарав каждому товару присвоена котегория (canegory_ID) - что является внешним ключом на таблицу категорий (category).
Так вот я могу выбрать товар, но мне нужно проверить какой категории он приналдежит. А эта информация находится в другой таблице.
Вот в чём проблема. Как мне написать запрос, который проверяет сразу 2 таблицы.
Или я не ясно объяснил что я хочу?

Спустя 1 час, 16 минут, 4 секунды (6.06.2007 - 11:27) md5 написал(а):
если name_id - ссылка на id в таблице name, то
Код
SELECT *
FROM `warehouse`
WHERE `name_id`=1
FROM `warehouse`
WHERE `name_id`=1
_____________
"Ни бита мимо!" (44n)