Редактирование: Работа с MySQL

Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия Ваш текст
Строка 79: Строка 79:
 
SELECT *
 
SELECT *
 
FROM (
 
FROM (
SELECT z.expected AS gap_start, IF(z.got - 1 > z.expected, z.got - 1, z.expected) AS gap_end
+
SELECT z.expected AS gap_start, IF(z.got - 1 > z.expected, z.got - 1, z.expected) as gap_end
 
FROM (
 
FROM (
 
SELECT @rownum := CONVERT(@rownum + 1, SIGNED INTEGER) AS expected, IF(@rownum = uid, 0, @rownum := uid) AS got
 
SELECT @rownum := CONVERT(@rownum + 1, SIGNED INTEGER) AS expected, IF(@rownum = uid, 0, @rownum := uid) AS got
Строка 87: Строка 87:
 
) AS z
 
) AS z
 
WHERE z.got != 0
 
WHERE z.got != 0
UNION
 
SELECT MAX(uid) + 1 AS gap_start, 65535 AS gap_end FROM users
 
 
) AS gaps
 
) AS gaps
WHERE gap_start <= gap_end
+
WHERE gap_end > 10000; -- if you need a specific range
AND gap_end >= 10000; -- if you need a specific range
 
 
</pre>
 
</pre>
 +
  
 
= Найти свободные диапазоны в номерах вланов, выполнять в DBeaver =
 
= Найти свободные диапазоны в номерах вланов, выполнять в DBeaver =

Обратите внимание, что все добавления и изменения текста статьи рассматриваются как выпущенные на условиях лицензии GNU Free Documentation License 1.3 (см. Wikipoint:Авторские права). Если вы не хотите, чтобы ваши тексты свободно распространялись и редактировались любым желающим, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого.
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ МАТЕРИАЛЫ, ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ!