Сначала вообще я Nood в SQL вещь, сейчас я работаю над классом проекта, где у меня есть несколько таблиц, какКак оптимизировать SQL-запрос больше?
Таблица пользователя
user_id | username | name
1 | nihan | Nihan Dip
2 | dip | Meaw ghew
more | more | more
Таблица Friend
you | friend_id
1 | 2
1 | 27
2 | 9
more | more
Таблица
user_id | follows
1 | 99
7 | 34
Таблица пост
post_id | user_id | type | content | post_time
1 | 1 | text | loren toren | timestamp
2 | 2 | text | ipsum | timestamp
Теперь я хочу, чтобы получить сообщение от друга пользователей, и кто он следует и Offcourse его, так что я сделал это SQL
SELECT
username, name,content, post_time
FROM
post
INNER JOIN
user ON user.user_id = post.user_id
WHERE
post.user_id IN (SELECT
friend_id
FROM
friend
WHERE
you = 1
UNION ALL
SELECT
follows
FROM
follow
WHERE
user_id = 1)
OR post.user_id = 1
ORDER BY post_time DESC
LIMIT 10
этот запрос работает нормально , Я просто хотел знать, есть ли оптимизация может быть выполнена? Тогда как? Пожалуйста, научите меня :)
индексы ........ –
post.user_id => индекс, post.post_time => индекс, user.user_id, имя пользователя => первичные и unque ключи, также каждые user_id являются FK для пользователя. user_id – ddiipp