Жил я себе спокойно, разрабатывал приложения, углубился в базы данных, почитал про highload, и умные люди на конференции в прошлом году заявляли, что в PgSQL операция count(id) весьма медленная. Интересно, никогда об этом не думал, что там — посчитать по индексу… а, нет, не по индексу, полный скан, значит не так уж и быстро… В
Browsing category SQL
Предположим, что нам нужно выбрать N строк из базы данных и отсортировать их случайным образом. При этом у нас нет возможности (или желания) реализовывать функцию rand() в Doctrine. В MySQL эта задача решается очень просто: SELECT column FROM table ORDER BY RAND() LIMIT 10 Но если вы используете DQL (Doctrine Query Language) это будет не
Полезная такая шпаргалка: Изменения во временных таблицах при срабатывании триггеров в T-SQL: Operation Table Inserted Table Deleted Min Rows Max Rows Min Rows Max Rows Insert 1 ∞ 0 0 Update 1 N 1 N Delete 0 0 1 N Где N — количество строк в таблице, к которой привязан триггер
В предыдущем посте я писал о том, что можно сделать функцию RAND, для генирации в диапазоне, однако при тестировании выяснилось, что она не работает должным образом — выкидываемое значение было больше чем max, в параметре функции. Новая функция: CREATE FUNCTION getRandom(@min int, @max int) RETURNS INT AS BEGIN Return (SELECT ROUND(((@max — @min -1) *
В SQL есть функция RAND() которая может генерировать псевдослучайные числа. Например такой запрос: Select Rand() Вернет: Дальше можно немного модифицировать выборку. Скажем, нам нужно, что бы выбиралось целое число от 0 до 100, тогда запрос будет таким: SELECT FLOOR(100*RAND()); Ну и если от 10 до 100, то таким: SELECT FLOOR(100*RAND()+10); В языке SQL поддерживаются функции,
Вот несколько способов получить текущую дату и время в Microsoft SQL Server. Можно использовать: CURRENT_TIMESTAMP, GETDATE(), {fn NOW()} CURRENT_TIMESTAMP CURRENT_TIMESTAMP это не недетерминированная функция. Представления и выражения, которые ссылаются на эту колонку не могут быть проиндексированны. CURRENT_TIMESTAMP может использоваться что бы вывести текущую дату и время в отчетах.