PHP/MySQL | Как зделать вывод количества юзеров?
Вилы Выкидные (10.02.2021 в 13:11)
при добавлении новой записи индекс ID знает, что макимальное значение ID равно ID последней вставленной строки
никто ничего не считает
при добавлении новой записи индекс ID знает, что макимальное значение ID равно ID последней вставленной строки


Если бы это было так и я руками сброшу значение AI, оно мне должно выдать значение меньше чем должно быть, а так оно выдаст максимально, тут явно дичь сказал ты
System, забей видно что он долбоеб.
System (10.02.2021 в 13:19)
Я все-же ошибся, оно делает поиск по B-tree и значение заранее не известно, так что ты написал бред, да прирост в производительности есть, но его нельзя использовать для подсчёта строк где возможно удаление данных либо не является AI
Я все-же ошибся, оно делает поиск по B-tree и значение заранее не известно, так что ты написал бред, да прирост в производительности есть, но его нельзя использовать для подсчёта строк где возможно удаление данных либо не является AI
зачем индексу цикл для поиска максимального значения индекса, если максимальное значение индекса - это и есть количество итераций цикла, то есть ты противоречишь сам себе, у тебя количество итераций уже известно, какой смысл гнать их циклом

не делается никакого поиска вообще, если ты только не захочешь сделать поиск id по убыванию с лимитом 1

ЯнеЛохматый (10.02.2021 в 13:22)
System, забей видно что он долбоеб.
System, забей видно что он долбоеб.
На самом деле, внёс плюс, я упустил момент логики поиска по дереву, так на самом деле быстрее, но не так как говорит он и тем более не для подсчёта записей)
Вилы Выкидные (10.02.2021 в 13:23)
зачем индексу цикл для поиска максимального значения индекса, если максимальное значение индекса - это и есть количество итераций цикла, то есть ты противоречишь сам себе, у тебя количество итераций уже известно, какой смысл гнать их циклом
не делается никакого поиска вообще, если ты только не захочешь сделать поиск id по убыванию с лимитом 1
зачем индексу цикл для поиска максимального значения индекса, если максимальное значение индекса - это и есть количество итераций цикла, то есть ты противоречишь сам себе, у тебя количество итераций уже известно, какой смысл гнать их циклом


In MySQL InnoDB, SELECT COUNT(id) WHERE secondary_index = ? is an expensive operation and when the user has a lot of messages, this query might take a long time. Even when using an index, the engine still needs to count all matching records. The performance will degrade with growing total message count.
On the other hand, SELECT MAX(id) WHERE secondary_index = ? can deliver the highest id in that index in almost constant time by doing a simple drilldown in the B-Tree structure of the index.
If you want to understand why, consider looking up how the B+Tree data structure works, which is used by InnoDB to structure the rows of your tables and indexes.
I suggest you go with SELECT MAX(id), if the requirement is only to check if there are new messages (and not the count of them).
Also, if you rely on the message count you might open a gap for race conditions. What if the user deletes a message and receives a new one between two polling intervals?
даже тут ему не научат потому что вилы такой умный что ни разу не видел внутри самого mysql
https://overcoder.net/q/105334/%D0%BA%D0%B0%D0%BA-%D1%80%D0%B0%D0%B1...l-auto-increment
https://overcoder.net/q/105334/%D0%BA%D0%B0%D0%BA-%D1%80%D0%B0%D0%B1...l-auto-increment
Вилы Выкидные (10.02.2021 в 13:23)
зачем индексу цикл для поиска максимального значения индекса, если максимальное значение индекса - это и есть количество итераций цикла, то есть ты противоречишь сам себе, у тебя количество итераций уже известно, какой смысл гнать их циклом
не делается никакого поиска вообще, если ты только не захочешь сделать поиск id по убыванию с лимитом 1
зачем индексу цикл для поиска максимального значения индекса, если максимальное значение индекса - это и есть количество итераций цикла, то есть ты противоречишь сам себе, у тебя количество итераций уже известно, какой смысл гнать их циклом


Читай выше отрывок из доки и пример и заткнись уже)
System (10.02.2021 в 13:22)
Если бы это было так и я руками сброшу значение AI, оно мне должно выдать значение меньше чем должно быть, а так оно выдаст максимально, тут явно дичь сказал ты
Если бы это было так и я руками сброшу значение AI, оно мне должно выдать значение меньше чем должно быть, а так оно выдаст максимально, тут явно дичь сказал ты
мне срать что ты сбросишь, никто так не делает, ты просто сочиняешь фуфло для спора, мне лучше - больше баллов набью

System (10.02.2021 в 13:26)
Читай выше отрывок из доки и пример и заткнись уже)
Читай выше отрывок из доки и пример и заткнись уже)
скрин мне дай, где там у тебя в каких доках индексируемый max(`id`) циклом ищется

Вилы Выкидные (10.02.2021 в 13:26)
мне срать что ты сбросишь, никто так не делает, ты просто сочиняешь фуфло для спора, мне лучше - больше баллов набью
мне срать что ты сбросишь, никто так не делает, ты просто сочиняешь фуфло для спора, мне лучше - больше баллов набью

Ситуация когда так сделали, ломает твою логику функции MAX, но если так сделают в реальности логика не сломается потому что будет реальный поиск данных только не по всей таблице а по дереву, что значительно быстрее и цикл там используется. Учи алгоритмы )