Below is the list of tables from the database along with their columns and datatype. Need to generate an accurate SQL query for the question.
Only use the columns present in the respective table. Only use the columns which are required to generate the SQL query. Only use table joins if required and not otherwise.

### Tables ###
TABLE: CREATE TABLE school_details ( School_ID int, Nickname text, Colors text, League text, Class text, Division text )
TABLE: CREATE TABLE school ( School_ID int, School text, Location text, Enrollment real, Founded real, Denomination text, Boys_or_Girls text, Day_or_Boarding text, Year_Entered_Competition real, School_Colors text )
TABLE: CREATE TABLE school_performance ( School_Id int, School_Year text, Class_A text, Class_AA text )
TABLE: CREATE TABLE player ( Player_ID int, Player text, Team text, Age int, Position text, School_ID int )

### Question ###
For each denomination, return the denomination and the count of schools with that denomination Visualize by bar chart, and rank total number from high to low order please.

### Accurate SQL ###

SELECT Denomination, COUNT(*) FROM school GROUP BY Denomination ORDER BY COUNT(*) DESC