def find_table(self, table):
        """
        Finds a table by name or alias. The FROM tables and JOIN tables
        are included in the search.

        :type table: str or :class:`ModelBase <django:django.db.models.base.ModelBase>`
        :param table: string of the table name or alias or a ModelBase instance

        :return: The table if it is found, otherwise None
        :rtype: Table or None
        """
        table = TableFactory(table)
        identifier = table.get_identifier()
        join_tables = [join_item.right_table for join_item in self.joins]
        for table in (self.tables + join_tables):
            if table.get_identifier() == identifier:
                return table
        return None
Finds a table by name or alias. The FROM tables and JOIN tables
        are included in the search.

        :type table: str or :class:`ModelBase <django:django.db.models.base.ModelBase>`
        :param table: string of the table name or alias or a ModelBase instance

        :return: The table if it is found, otherwise None
        :rtype: Table or None