Я хотел бы сделать один запрос на одной таблице без использования UNIONКак я могу написать этот запрос MYSQL без использования UNION?
Вот два вопроса, которые мне нужно объединить.
SELECT field1, field2, field3 FROM table1 WHERE field4 != 'condition1' AND feild3 >= 'condition2' ORDER BY field3 ASC LIMIT 20;
SELECT field1, field2, field3 FROM table1 WHERE field4 != 'condition1' AND feild3 < 'condition2' ORDER BY field3 DESC LIMIT 5;
В принципе, я пытаюсь получить 20 записей выше определенной записи (по заказу field3, а не идентификатор), и 5 записей под ним, не захватывая саму запись в результатах.
Фокус в том, что я не могу использовать UNION.
Если вы используете> = и <=, вы можете получить дубликат строки. Это то, что вы хотите? –
Это домашнее задание? Какая еще причина для запрета «союза»? –
@ St.Woland: Ты прав. Я отредактировал пример, чтобы показать> = и <. @ Jørn: Это довольно забавно. На самом деле, я пытаюсь построить запрос в CakePHP framework, и UNION не поддерживается. Я обновляю старое устаревшее приложение, которое просто запускает два отдельных запроса. – Stephen