|
|
|
|
|
для: Loki
(25.06.2005 в 17:40)
| | А ну тогда, да... | |
|
|
|
|
|
|
|
для: cheops
(25.06.2005 в 01:03)
| | В общих чертах понял. Только в нашем случае это не поможет. У нас алгоритм следующий:
последовательная выборка данных во временную таблицу, выборка из временной таблицы в массив и подсчет количества упоминаний средствами php. То есть во временной таблице у нас нужных данных нет, а если брать их из массива, то пропадает основная фишка - обработка средствами mysql. В этом случае, этот вариант ничем не отличается от того, который используется сейчас:
| |
|
|
|
|
|
|
|
для: Loki
(25.06.2005 в 00:27)
| | На самом деле когда мы пишем многотабличный запрос - мы тоже проводим объединение (так называемое перекрёстное объединение)
SELECT * FROM tbl1, tbl2 WHERE tbl1.id = tbl2.id
|
Такое объединение можно записать при помощи оператора JOIN
SELECT * FROM tbl1 JOIN tbl2 WHERE tbl1.id = tbl2.id
|
Условие можно оставить в WHERE, но принято его записывать в конструкции ON, следующей после JOIN
SELECT * FROM tbl1 JOIN tbl2 ON tbl1.id = tbl2.id
|
Такой запрос вернёт все комбинации записей из таблицы tbl1 и tbl2. А вот если нам нужно плюс к этим записям вернуть записи из таблицы tbl1 для которых нет соответствия в таблицы tbl2, т.е. которые не удовлетворяют условию tbl1.id = tbl2.id, то необходимо прибегнуть к левому объединению
SELECT * FROM tbl1 LEFT JOIN tbl2 ON tbl1.id = tbl2.id
|
Если тот же финт нужно провернуть с таблицей tbl2, то можно прибегнуть к правому объединению
SELECT * FROM tbl1 RIGHT JOIN tbl2 ON tbl1.id = tbl2.id
|
| |
|
|
|
|
|
|
|
для: cheops
(20.06.2005 в 17:03)
| | Хм... вот нифига я не понял:) Можно чуть более издалека?:) Начать лучше с того, что пояснить немного про объединение таблиц (хотя, я вроде начинаю понимать о чем речь:) | |
|
|
|
|
|
|
| Я вспомнил как включить в результирующую таблицу страницы, для которых отсутствуют значения в "Точки входа" и получить страницы со значения и 0 в один запрос. Для этого достаточно провести левое объединение таблиц (LEFT JOIN), где в качестве "левой" таблицы будет выступать таблица pages - если задача всё ещё актуальна - можем сформировать запрос. | |
|
|
|
|