ВЫБЕРИТЕ отличные a, b, c ОТ (
ВЫБЕРИТЕ A, B, C, 1 как o ИЗ таблицы, ГДЕ поле LIKE 'query%'
UNION
ВЫБЕРИТЕ A, B, C, 2 как o ИЗ таблицы ГДЕ поле LIKE '% query'
UNION
ВЫБЕРИТЕ A, B, C, 3 как o ИЗ таблицы, ГДЕ поле LIKE '% query%'
)
ЗАКАЗАТЬ ПО ОГРАНИЧЕНИЮ ASC 5
Был бы мой способ сделать это. Я не знаю, как это масштабируется.
Я не понимаю
GROUP BY B ORDER BY B ASC LIMIT 5
Это относится только к последнему SELECT в объединении?
Позволяет ли MySQL на самом деле группировать по столбцу и все еще не выполнять агрегирование по другим столбцам?
РЕДАКТИРОВАТЬ: ааааа. Я вижу, что MySQL действительно делает. Это специальная версия DISTINCT (б) или что-то. Я не хотел бы пытаться быть экспертом в этой области:)