• Запрос из базы, одно поле — много значений?

    Да тут особо смотреть нечего. Простое правило: поля, по которым у вас идут джойны — надо делать числовыми и индексированными, если таблицы будут большими. «wp_postmeta_1.meta_value > 8000» — даже вот это — здесь у вас неявное преобразование. Что будет, если у вас юзер загонит в поле Rent — а оно варчар и позволяет любое значение, скажем, вот это: «цена 9000 рублей» или даже просто «9000р»?
    Отработает ваша выборка?

    Лучше переделайте сейчас, потому что сейчас — еще не очень поздно, а вот когда вы на это накрутите всю систему — тогда будет реально поздно и неимоверно сложно.

    Разработать структуру — могу, в принципе, я делал, например, такую небольшую систему, как Мобильный Банк Сбербанка РФ :)
    Но это предмет переговоров в личке.
  • Как определить, сколько времени будет выполняться запрос к БД?

    Их нет потому, что прогнозировать это невозможно. Только предполагать. Вот предполагаете вы, что выполните работу для начальства за один час. А тут приходит другое, куда более высокое начальство и говорит: «бросай все, пошли со мной».

    теперь давайте на базу данных это спроецируем:

    insert into tbl_supertest(id, value)
    select v.id_value, v.value from
    tbl_value v
    join tbl_valuedetail vd on v.id_value = vd.id_value

    сколько времени будет выполнятся подобный запрос на 10 строчках? Политическая проститутка Троцкий скажет: «да за ноль секунд!» — и будет, как всегда, в корне не прав. Блокировочки! Другой процесс взял, и увел таблицу tbl_supertest с собой в режиме — запись запрещена. И? Пока он её не отдаст, никакой работы не будет. Конечно, мы с вами можем посчитать пока скорость выполнения селекта — но это здесь, в самом простом варианте.

    А если мы пишем процедуру, и без данных в таблице tbl_supertest — дальше ничего работать не будет вообще? И это еще самый простой вариант.

    Теперь пока вы там сидите и пытаетесь выполнить запрос с селектом — приходит еще сто тысяч пользователей и начинают писать в таблицу tbl_value — после чего записей в ней становится не 10, а сто миллионов. А индекс мы забыли с вами создать на tbl_valuedetail.id_value. Отразится это на времени исполнения? А через минуту нас осенило с вами, и мы индекс таки создали. Отразится это на времени исполнения?

    И это я еще не учел наличие свободной памяти, скорость вашего жесткого диска, пренебрег фоновыми процессами и еще десятком важных деталей. Понимаете, почему это можно говорить лишь очень грубо?

    Не в смысле: «Начальник, отвали с кретинским вопросом!», а в смысле «В мультиюзерной и мультизадачной среде ответить на вопрос ТОЧНО — невозможно. Даете монопольный доступ — будет примерно столько-то».