code: def get_profile(self, profile_count=50):
          
  
          from collections import namedtuple
  
          profile_table_name = "sql_profile"
  
          value_matrix = [
              [query, execute_time, self.__dict_query_count.get(query, 0)]
              for query, execute_time in six.iteritems(self.__dict_query_totalexectime)
          ]
          attr_names = ("sql_query", "cumulative_time", "count")
          con_tmp = connect_memdb()
          try:
              con_tmp.create_table_from_data_matrix(
                  profile_table_name, attr_names, data_matrix=value_matrix
              )
          except ValueError:
              return []
  
          try:
              result = con_tmp.select(
                  select="{:s},SUM({:s}),SUM({:s})".format(*attr_names),
                  table_name=profile_table_name,
                  extra="GROUP BY {:s} ORDER BY {:s} DESC LIMIT {:d}".format(
                      attr_names[0], attr_names[1], profile_count
                  ),
              )
          except sqlite3.OperationalError:
              return []
          if result is None:
              return []
  
          SqliteProfile = namedtuple("SqliteProfile", " ".join(attr_names))
  
          return [SqliteProfile(*profile) for profile in result.fetchall()]
docs: Get profile of query execution time.
  
          :param int profile_count:
              Number of profiles to retrieve,
              counted from the top query in descending order by
              the cumulative execution time.
          :return: Profile information for each query.
          :rtype: list of |namedtuple|
          :raises simplesqlite.NullDatabaseConnectionError:
              |raises_check_connection|
          :raises simplesqlite.OperationalError: |raises_operational_error|
  
          :Example:
              :ref:`example-get-profile`