У меня есть таблица заказов в моей БД (MySql), и там я хочу получить 4 поля.
Но я просто хочу последний заказ, который сделал каждый клиент, поэтому я использовал этот SQL-запрос
SELECT
salesman,
client,
insert_date,
qtd_order
FROM
'orders'
WHERE
salesman = 'daniel.costa'
GROUP BY
client
ORDER BY
insert_date
Но это дает мне первый порядок, а не последний.
Не могли бы вы мне помочь.
Вам нужно ORDER BY DESC
чтобы начать с самого последнего... И если вам нужно только 1, вы можете LIMIT 1
- нет необходимости в GROUP BY
SELECT salesman, client, insert_date, qtd_order FROM
orders WHERE salesman = 'daniel.costa' ORDER BY insert_date DESC LIMIT 1
DESC
. Затем он "выбирает" первый результат и отбрасывает остальные из них с помощью LIMIT 1
.
DESC
послеORDER BY insert_date
GROUP BY
. Ваш запрос даже не имеет смысла.