Fix floordiv (//) for float/numeric by int with div_is_floordiv dialects
Fixed issue where floor division (``//``) between a :class:`.Float` or :class:`.Numeric` numerator and an :class:`.Integer` denominator would omit the ``FLOOR()`` SQL wrapper on dialects where :attr:`.Dialect.div_is_floordiv` is ``True`` (the default, including PostgreSQL and SQLite). ``FLOOR()`` is now applied if either the denominator or the numerator is a non-integer, so that expressions such as ``float_col // int_col`` render as ``FLOOR(float_col / int_col)`` instead of the incorrect ``float_col / int_col``. Pull request courtesy r266-tech. Fixes: #10528 Closes: #13191 Pull-request: https://github.com/sqlalchemy/sqlalchemy/pull/13191 Pull-request-sha: c9cbc47c877e19c91f912556b4ead6cd26e3cfe6 Change-Id: I5f9f02d966aa6ccee214a2c5cc27a73a4292da03
O
OSS Contributor committed
f862a4534affcac0522832583e89c209ac58290f
Parent: 5594b60
Committed by Mike Bayer <mike_mp@zzzcomputing.com>
on 5/20/2026, 7:25:53 PM