Целочисленное деление |
||||||||||||||||||||||||||||||||||||||||||
Иногда недоумение у начинающих работать с Cистема управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Язык структурированных запросов) — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. SQL Server вызывают результаты подобных запросов: Одни (подозреваю, что это пользователи MySQL или Oracle) ожидают результаты типа
Чтобы развеять это недоумение, скажу, что операция "/" просто обозначает целочисленное деление (а именно, дает в результате
Операция получения остатка от деления в SQL Server обозначается "%":
Теперь что касается некоторых других СУБД.PostgreSQL ведет себя аналогично SQL Server. В MySQL для получения неполного частного используется специальный оператор DIV:
Остаток от деления можно также получить в стиле а-ля Паскаль:
Хотя будет работать и "общепринятое"
В Oracle вообще нет операции для получения неполного частного, поэтому результат деления
Для получения остатка от деления в Oracle используется функция MOD:
Наконец, если делитель равен нулю: то MySQL возвращает NULL, в то время как другие рассматриваемые здесь СУБД дают ошибку деления на ноль.Рекомендуемые упражнения: 137 |