SELECT 'cms_books_exists' AS metric, COUNT(*) AS value FROM information_schema.tables WHERE table_schema='book_search' AND table_name='cms_books'
UNION ALL
SELECT 'book_chapters_exists', COUNT(*) FROM information_schema.tables WHERE table_schema='book_search' AND table_name='book_chapters'
UNION ALL
SELECT 'products_book_id_col', COUNT(*) FROM information_schema.columns WHERE table_schema='book_search' AND table_name='products' AND column_name='book_id'
UNION ALL
SELECT 'products_book_content_id_col', COUNT(*) FROM information_schema.columns WHERE table_schema='book_search' AND table_name='products' AND column_name='book_content_id'
UNION ALL
SELECT 'cms_contents_book', COUNT(*) FROM cms_contents c INNER JOIN cms_content_types t ON t.id=c.content_type_id WHERE t.`key`='book'
UNION ALL
SELECT 'cms_contents_chapter', COUNT(*) FROM cms_contents c INNER JOIN cms_content_types t ON t.id=c.content_type_id WHERE t.`key`='chapter'
UNION ALL
SELECT 'book_chapter_relations', COUNT(*) FROM cms_content_relations WHERE relation_type='book_chapter'
UNION ALL
SELECT 'chapter_child_relations', COUNT(*) FROM cms_content_relations WHERE relation_type='chapter_child'
UNION ALL
SELECT 'products_book_content_id_nn', COUNT(*) FROM products WHERE book_content_id IS NOT NULL
UNION ALL
SELECT 'book_content_id_orphan', COUNT(*) FROM products p WHERE p.book_content_id IS NOT NULL AND NOT EXISTS (SELECT 1 FROM cms_contents c WHERE c.id=p.book_content_id);
