запрос
есть таблица table1 с полями id, ...
есть таблица table2 с полями id, parent, status, ...
надо выбрать поля из table1 такие, что table2.parent = table1.id, table2.status = 1;
только записей в table2 c полем parent равным id может быть не одна, но поля table1 должны быть выбраны только один раз (то есть LIMIT 1 не катит, т.к. LIMIT здесь отрежет следующие строки в table1).. и сделать это всё за один запрос...
бд mysql
есть таблица table1 с полями id, ...
есть таблица table2 с полями id, parent, status, ...
надо выбрать поля из table1 такие, что table2.parent = table1.id, table2.status = 1;
только записей в table2 c полем parent равным id может быть не одна, но поля table1 должны быть выбраны только один раз (то есть LIMIT 1 не катит, т.к. LIMIT здесь отрежет следующие строки в table1).. и сделать это всё за один запрос...
SELECT DISTINCT ...
бд mysql
есть таблица table1 с полями id, ...
есть таблица table2 с полями id, parent, status, ...
надо выбрать поля из table1 такие, что table2.parent = table1.id, table2.status = 1;
только записей в table2 c полем parent равным id может быть не одна, но поля table1 должны быть выбраны только один раз (то есть LIMIT 1 не катит, т.к. LIMIT здесь отрежет следующие строки в table1).. и сделать это всё за один запрос...
Поясни как они связываються (просто понять не могу, если table1.id - это что-то, что связывает несколько колонок из table2, то значение table1.id должно быть уникальным, если нет, то я немногу понять их связь) и ещё все поля и за что они отвечают, возможно тебе нужно будет перестроить бд.
Поясни как они связываються (просто понять не могу, если table1.id - это что-то, что связывает несколько колонок из table2, то значение table1.id должно быть уникальным, если нет, то я немногу понять их связь) и ещё все поля и за что они отвечают, возможно тебе нужно будет перестроить бд.
table1.id уникально...
бд перестраивать неохота))
связь логически представляема в виде "новость"-"комментарии к ней"...
table1.id уникально...
бд перестраивать неохота))
связь логически представляема в виде "новость"-"комментарии к ней"...
Я сейчас напишу примерно как (это моё мнение) должно быть. news(id, news(дадее по желанию: автор, время и т.д.)), comment(id, id_news, comment(далее так же по желанию:)).
выводиться новость... Неохота заново писать, просто минут пять назад это делал воттут :). Посмотри и всё поймешь. Если у тебя база немного не так организованна, то имхо лучше её сразу переделать (мне в своё время с моим первым магазином тоже говорили: "пока не забил, переделай", дураком был, непослушал и расхлёбывал 3 месяца пока сайт переделывать не начал:)).
з.ы. на самом деле у меня не новости, я просто аналогию привёл...
можно поподробнее? я с этой командой не работал вообще, ман читать влом)
SELECT DISTINCT table1.id
FROM table1, table2
WHERE table1.id = table2.parent
AND table2.status = 1
Должно работать...
SELECT DISTINCT table1.id
FROM table1, table2
WHERE table1.id = table2.parent
AND table2.status = 1
Должно работать...
Мне кажеться ему LEFT JOIN нужен... Дай мне полную структуру таблицы и укажи что на что ссылаеться, тогда помогу (при условии что это не заработает).
Мне кажеться ему LEFT JOIN нужен... Дай мне полную структуру таблицы и укажи что на что ссылаеться, тогда помогу (при условии что это не заработает).
а чем LEFT JOIN от INNER JOIN отличается? влом ман читать, а сам я с этим плохо разбираюсь...
структуру я ж написал
table1:
id int
.... остальные поля не нужны...
table2:
id int
parent int
status int
.... остальные поля не нужны...
table1.id уникальное
table2.id тоже уникальное, но здесь не нужно
table2.parent - указывает, с каким table1.id оно связано... записей с одинаковым table2.parent может быть несколько (table1.id у них разное естественно, в этом проблема объединения)...
Тебе нужно что-то типа этого. Если что-то не то, то попробуй поменять местами.