MySQL: Взять из базы ближауйшую запись

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
Подскажите запрос, надо получить первую запись с наименьшим значением в указанном поле.
 

budora

Client
Регистрация
13.08.2012
Сообщения
831
Благодарностей
556
Баллы
93
SELECT id, min(date) from table;
Код:
SELECT name
 

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
Спасибо! Я тут такую конструкцию сочинил. Как то сильно отличается от твоей.

Код:
SELECT `col1`, `col22`
FROM `table`
WHERE `col4` < '1' AND `col5` != "{-Variable.name-}" ORDER BY `id` ASC LIMIT 1;
 

Nord

Client
Регистрация
22.03.2012
Сообщения
2 406
Благодарностей
1 473
Баллы
113
SELECT id, min(date) from table;
Код:
SELECT name
Спасибо! Я тут такую конструкцию сочинил. Как то сильно отличается от твоей.

Код:
SELECT `col1`, `col22`
FROM `table`
WHERE `col4` < '1' AND `col5` != "{-Variable.name-}" ORDER BY `id` ASC LIMIT 1;

Извиняюсь, не буду заводить другую тему.
Нужно узнать ID( праймари кей) последней добавленной записи ( чтоб по этому числу потом вносить изменения в другую таблицу)
LAST_INSERT_ID() - почему-то возвращает постоянно 0, хотя там в таблице уже записей 50.

В первую таблицу заносится данные и там "автоинкрементруется" ID, нужно его вставить во вторую таблицу в поле "POST_ID"
SQL:
INSERT INTO `Tab1`(.......) VALUES (....);
INSERT INTO `Tab2` (POST_ID, META_KEY, META_VALUE) VALUES ('LAST_INSERT_ID()', 'fsdgfgsdfgsdf', '9') ;
 
Последнее редактирование:

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
А если использовать COUNT(*). Сам сейчас подобное изобретаю. Надо взять по критериям значение в одной таблице, проверить нет ли его в другой и вставить.
 

Nord

Client
Регистрация
22.03.2012
Сообщения
2 406
Благодарностей
1 473
Баллы
113
А если использовать COUNT(*). Сам сейчас подобное изобретаю. Надо взять по критериям значение в одной таблице, проверить нет ли его в другой и вставить.
Count считает количество, а не последний номер.
В таблице могут быть удаленные строки, тогда последний ID буде, допустим, 75, а строк только 45, тогда Count вернет 45.
Так что вряд ли
 

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
Понятно.
 

DmitryAk

Client
Регистрация
14.12.2016
Сообщения
860
Благодарностей
824
Баллы
93
В первую таблицу заносится данные и там "автоинкрементруется" ID, нужно его вставить во вторую таблицу в поле "POST_ID"
А почему не разрулить на уровне самой бд? Триггера для таких задач и придуманы. Создаем триггер after insert где прописываем данные в нужную табличку и не заморачиваемся с косяками ласт-инсерта и прочими извращениями.
 

Nord

Client
Регистрация
22.03.2012
Сообщения
2 406
Благодарностей
1 473
Баллы
113
А почему не разрулить на уровне самой бд? Триггера для таких задач и придуманы. Создаем триггер after insert где прописываем данные в нужную табличку и не заморачиваемся с косяками ласт-инсерта и прочими извращениями.
Потому что знаний в БД, как у секретарш, которые пишут, что досконально знают Exel =)
*Ушел читать про триггеры
 
  • Спасибо
Реакции: DmitryAk

DmitryAk

Client
Регистрация
14.12.2016
Сообщения
860
Благодарностей
824
Баллы
93
Потому что знаний в БД, как у секретарш, которые пишут, что досконально знают Exel =)
Поржал.
Ибо и сам не осилил его до конца. У меня одно время книженция по екселю шестисантиметровой толщины была в обиходе.. почитывал плотно. Должен заметить excel недооценен большинством))
Особенно в связке с vbs.. вместе это полноценная платформа для разработки. Видел систему управления комп. клубом и торгового бота на экселе. Не говоря уж о всяких расчетниках на нем же.
 
  • Спасибо
Реакции: Nord

Nord

Client
Регистрация
22.03.2012
Сообщения
2 406
Благодарностей
1 473
Баллы
113

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)