Допустим, у меня есть следующие данные в таблице Customers: (ничего больше)SQL - Как найти наибольшее число в столбце?
ID FirstName LastName
-------------------------------
20 John Mackenzie
21 Ted Green
22 Marcy Nate
Какой ЗЕЬЕСТ может получить мне номер 22, в столбце ID?
Мне нужно сделать что-то вроде этого, чтобы создать уникальный идентификатор. Конечно, я могу позволить системе сделать это с помощью auto-increment, но тогда как я могу получить автоматически сгенерированный идентификатор?
Я подумал о «SELECT ID FROM Клиенты» и подсчет строк вернулся, но это кажется ужасно ineffecient и в этом случае, это будет неправильно возвращать «3», хотя мне нужен уникальный идентификатор 23.
Никакого неуважения к msaeed, но Brisbe42 & D Ответы Андреса лучше. –
Отличный момент, но их ответы прямо не отвечают на мой вопрос. Мой метод безопасен, так как я получаю бесплатный идентификатор, а затем добавляю запись. Конечно, вы могли бы сказать, что одновременные операции могут испортить это несколькими программами, получая один и тот же «свободный» ID и повторно используя его ... но этого можно избежать, добавив запись супер быстро после получения бесплатного идентификатора. –
msaeed и некоторые другие отвечают на ваш вопрос * точно *. Вопрос: «SQL - как найти наибольшее число в столбце?» и «Какой оператор SELECT может получить мне номер 22 в столбце ID?».Исправьте свой пост, чтобы уточнить ваши намерения. – Liao