Вопрос:
У меня есть таблица сотрудников с их общей информацией. как найти последние измененные записи из этой конкретной таблицы и, кроме того, я не могу добавить больше столбцов в эту базу данных?
Ответ №1
Если есть столбец DateModified или что-то в этом роде, и вы хотите, чтобы 10 самых последних строк (например), вы могли использовать такой запрос, как:
SELECT Top 10 * FROM myTable ORDER BY DateModified DESC;
Вы не указываете аромат SQL, так что запрос может быть несколько иным, если вы находитесь в Oracle, SQL Server или MS Access.
Если у вас нет такого столбца, и вы хотите узнать последние добавленные записи, если первичный ключ является автоинкрементным номером, вы можете сделать то же самое, но сортировать по PrimaryKey по убыванию. Если вам действительно нужны измененные (то есть обновленные) записи, и у вас нет столбца DateModified, вам не повезло. Нет никакого способа узнать.
Ответ №2
Используйте функцию MAX Aggregate:
SELECT MAX(Modifieddate) FROM your_table WHERE your_conditions. Ответ №3
Используйте этот код:
SELECT * FROM Update_Table UT1 WHERE UT1.Modified_Date = (SELECT MAX(UT2.Modified_Date) FROM Update_Table UT2 WHERE UT2.PK = UT1.PK AND UT2.Last_User = user) Ответ №4
Используйте этот код для получения последнего обновленного времени.
select top 1 a.object_id, b.name, a.last_user_update from sys.dm_db_index_usage_stats as a, sys.objects as b where a.object_id=b.object_id and b.name = ‘your_table_name’ order by last_user_update desc