docs: def find(self, table_name, constraints=None, *, columns=None, order_by=None):
      """Returns the first record that matches the given criteria.
  
      :table_name: the name of the table to search on
      :constraints: is any construct that can be parsed by SqlWriter.parse_constraints.
      :columns: either a string or a list of column names
      :order_by: the order by clause
      """
      query_string, params = self.sql_writer.get_find_all_query(
        table_name, constraints, columns=columns, order_by=order_by)
      query_string += " limit 1;"
      return self.execute(query_string, params).fetchone()