implementation is actually sql-specific