доброго времени суток есть такая конструкция (часть) SELECT * FROM table1 ORDER BY (SELECT title FROM table2 WHERE table2.id=table1.pid) ASC LIMIT 0,150) жирным выделено то что изменить нельзя (ну или пока нельзя) как же мне отсортировать по title, таблица то другая получается...
к сожалению так не могу это не изменяемо SELECT * FROM table1 ORDER BY ... LIMIT 0,150) получается при таком раскладе я не могу так сделать как я хотел?
нет, в ордер не стоит совать подзапросы, но что мешает указать нужные поля из первой таблицы, подцепить тайтл из второй и потом отсортировать?
попробую объяснить дело в том что table1 меняется, для разного разная) скажем так и table2 нужна только для одного случая чтобы сортировать не по id а красиво по title используя id если бы можно было бы сделать так чтобы table2 не мешала другим вариантам то я бы изменил запрос... вопрос как? по умолчанию SELECT * FROM table1 ORDER BY ... LIMIT 0,150) вместо ... может быть к примеру 'type' но можно и запрос туда еще впихнуть, что я и пытался сделать надеюсь понятно)
Делай разные запросы в зависимости от потребностей - простой if else или switch case. Там, где не нужна вторая таблица - не используй, где нужна - используй.