Lee Child Biography, Books, and Similar Authors

Author Biography  | Interview  | Books by this Author  | Read-Alikes

Lee Child
Photo: Sigrid Estrada

Lee Child

Lee Child Biography

Lee Child was born in the exact geographic center of England, in the heart of the industrial badlands. Never saw a tree until he was twelve. It was the sort of place where if you fell in the river, you had to go to the hospital for a mandatory stomach pump. The sort of place where minor disputes were settled with box cutters and bicycle chains. He's got the scars to prove it.

But he survived, got an education, and went to law school, but only because he didn't want to be a lawyer. Without the pressure of aiming for a job in the field, he figured it would be a relaxing subject to study. He spent most of the time in the university theater - to the extent that he had to repeat several courses, because he failed the exams - and then went to work for Granada Television in Manchester, England. Back then, Granada was a world-famous production company, known for shows like Brideshead Revisited, Jewel in the Crown, Prime Suspect and Cracker. Lee worked on the broadcast side of the company, so his involvement with the good stuff was limited. But he remembers waiting in the canteen line with people like Laurence Olivier, John Gielgud, Natalie Wood and Michael Apted. And he says that being involved with more than 40,000 hours of the company's program output over an eighteen-year stay taught him a thing or two about telling a story. He also wrote thousands of links, trailers, commercials and news stories, most of them on deadlines that ranged from fifteen minutes to fifteen seconds. So the thought of a novel-a-year didn't worry him too much, in his next career.

But why a next career? He was fired, back in 1995, that's why. It was the usual Nineties downsizing thing. After eighteen years, he was an expensive veteran, and he was also the union organizer, and neither thing fit the company's plan for the future. And because of the union involvement, he wasn't on too many alternative employers' wish lists, either. So he became a writer, because he couldn't think of anything else to do. He had an idea for a character who had suffered the same downsizing experience but who was taking it completely in his stride. And he figured if he brought the same total commitment to his audience that he'd seen his television peers develop, he could get something going. He named the character Jack Reacher and wrote Killing Floor as fast as he could. He needed to sell it before his severance check ran out. He made it with seven weeks to spare, and luckily the book was an instant hit, selling strongly all around the world, and winning both the Anthony Award and the Barry Award for Best First Novel.

Lee moved from the UK to the US in the summer of 1998. He has three homes—an apartment in Manhattan, a country house in the south of France, and whatever airplane cabin he happens to be in while traveling between the two. In the US he drives a supercharged Jaguar, which was built in Jaguar's Browns Lane plant, thirty yards from the hospital in which he was born.

Lee spends his spare time reading, listening to music, and watching the Yankees, Aston Villa, or Marseilles soccer. He is married with a grown-up daughter.

Jack Reacher series

  • Killing Floor (1997)
  • Die Trying (1998)
  • Tripwire (1999)
  • The Visitor (2000); also published as Running Blind
  • Echo Burning (2001)
  • Without Fail (2002)
  • Persuader (2003)
  • The Enemy (2004)
  • One Shot (2005)
  • The Hard Way (2006)
  • Bad Luck and Trouble (2007)
  • Nothing to Lose (2008)
  • Gone Tomorrow (2009)
  • 61 Hours (2010)
  • Worth Dying For (2010)
  • The Affair (2011)
  • A Wanted Man (2012)
  • Never Go Back (2013)
  • Personal (2014)
  • Make Me (2015)
  • Night School (2016)
  • The Midnight Line (2017)
  • Past Tense (2018)
  • Blue Moon (2019)
  • Lee Child's website

    This bio was last updated on 10/05/2019. In a perfect world, we would like to keep all of BookBrowse's biographies up to date, but with many thousands of lives to keep track of it's simply impossible to do. So, if the date of this bio is not recent, you may wish to do an internet search for a more current source, such as the author's website or social media presence. If you are the author or publisher and would like us to update this biography, send the complete text and we will replace the old with the new.

    Membership Advantages
    • Reviews
    • "Beyond the Book" articles
    • Free books to read and review (US only)
    • Find books by time period, setting & theme
    • Read-alike suggestions by book and author
    • Book club discussions
    • and much more!
    • Just $60 for 12 months or $20 for 3 months.
    • More about membership!

    Interview

    Lee Child answers many questions including why he takes the time to answer reader's questions himself and what he thinks of the movie adaptations of his books.


    Your latest book, Persuader, is one of your best yet. Was there anything in particular that energized you while writing it? Perhaps the return to the first-person narrative?
    Thanks for the compliment! I guess I find each new book a very energizing experience, but for this one the return to first-person coupled with a powerful idea for the opening couple of sequences gave it extra momentum early in the process. Certainly it was fun to write -- really very linear, and very focused.

    Almost all the reviews for Persuader have been dazzling. How do you come off that high and buckle down for the next book? Or is your confidence strong enough that fear no longer enters into it?
    Fear is always a part of it. Graham Greene once said "Success for a writer is merely failure delayed." But really, the thing is that a book-a-year writer like me works so far ahead that by the time, say, Persuader comes out, I've already written the following book and am starting the one after that. So in response to Persuader reviews, I'm thinking, what, that old thing? And in general I'm pretty self-confident, for a writer. By now I know I can do this.

    Let's talk about the movie deal. Some very well-known ...

    Membership Advantages
    • Reviews
    • "Beyond the Book" articles
    • Free books to read and review (US only)
    • Find books by time period, setting & theme
    • Read-alike suggestions by book and author
    • Book club discussions
    • and much more!
    • Just $60 for 12 months or $20 for 3 months.
    • More about membership!

    Books by this Author

    Books by Lee Child at BookBrowse
    Blue Moon jacket Never Go Back jacket A Wanted Man jacket The Affair jacket
    Membership Advantages
    • Reviews
    • "Beyond the Book" articles
    • Free books to read and review (US only)
    • Find books by time period, setting & theme
    • Read-alike suggestions by book and author
    • Book club discussions
    • and much more!
    • Just $60 for 12 months or $20 for 3 months.
    • More about membership!

    Read-Alikes

    All the books below are recommended as read-alikes for Lee Child but some maybe more relevant to you than others depending on which books by the author you have read and enjoyed. So look for the suggested read-alikes by title linked on the right.
    How we choose read-alikes

    • Jeff Abbott

      Jeff Abbott

      Jeff Abbott is a suspense novelist. He is published in twenty languages and has been a bestseller in the US, the UK, Ireland, France, Germany, Australia and Portugal. His novels Panic and Collision have been optioned for film... (more)

      If you enjoyed:
      Echo Burning

      Try:
      Panic
      by Jeff Abbott

    • David Baldacci

      David Baldacci

      David published his first novel, Absolute Power, in 1996. A major motion picture adaptation followed, with Clint Eastwood as its director and star. In total, David has published 32 novels for adults; all have been national ... (more)

      If you enjoyed:
      Tripwire

      Try:
      The Simple Truth
      by David Baldacci

    We recommend 29 similar authors


    Non-members can see 2 results. Become a member
    Membership Advantages
    • Reviews
    • "Beyond the Book" articles
    • Free books to read and review (US only)
    • Find books by time period, setting & theme
    • Read-alike suggestions by book and author
    • Book club discussions
    • and much more!
    • Just $60 for 12 months or $20 for 3 months.
    • More about membership!

    BookBrowse Book Club

    Book Jacket
    The Cover Girl
    by Amy Rossi
    Find them early enough, and they will always be her girls.

    Members Recommend

    • Book Jacket
      The Sister's Curse
      by Nicola Solvinic
    • Book Jacket
      The Lost Story of Eva Fuentes
      by Chanel Cleeton
      A mysterious book links three women across generations in this novel by New York Times bestselling author Chanel Cleeton.
    • Book Jacket
      The Vanishing Place
      by Zoë Rankin
    Who Said...

    Tread softly because you tread on my dreams.

    Click Here to find out who said this, as well as discovering other famous literary quotes!

    Book
    Trivia
    • Book Trivia

      Can you name the title?

      Test your book knowledge with our daily trivia challenge!

    Wordplay

    Solve this clue:

    W the C A the M W P

    and be entered to win..

    Your guide toexceptional          books

    BookBrowse seeks out and recommends the best in contemporary fiction and nonfiction—books that not only engage and entertain but also deepen our understanding of ourselves and the world around us.

     


    Debugging Information
    ColdFusion Server Developer 2021,0,13,330286
    Template /biographies/index.cfm
    Time Stamp 31-May-26 09:20 PM
    Locale en
    User Agent Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
    Remote IP 127.0.0.1
    Host Name 127.0.0.1


    Execution Time

    Total Time Avg Time Count Template
    1780262408752 ms 1.78026240875E+012 ms 1 /root/website/app_server.cfm
    1057 ms 1057 ms 1 /root/website/biographies/index.cfm
    335 ms 335 ms 1 /root/website/app_layout.cfm
    317 ms 317 ms 1 /root/website/app_globals.cfm
    237 ms 237 ms 1 /root/website/biographies/dsp_main.cfm
    229 ms 76 ms 3 /root/website/adsystem/adsystem_mod.cfm
    222 ms 222 ms 1 /root/website/site/blocks/layout/dsp_right_column.cfm
    131 ms 66 ms 2 /root/website/queries/qry_get_books_by_author_id.cfm
    121 ms 121 ms 1 /root/website/adzones/AdZone6.cfm
    91 ms 91 ms 1 /root/website/site/blocks/layout/dsp_footer.cfm
    90 ms 90 ms 1 /root/website/adzones/showcase_track.cfm
    87 ms 87 ms 1 /root/website/site/blocks/dsp_border_first_impressions.cfm
    86 ms 86 ms 1 /root/website/queries/qry_get_arcs_for_ad.cfm
    80 ms 80 ms 1 /root/website/queries/qry_get_active_obc.cfm
    70 ms 70 ms 1 /root/website/queries/qry_get_books_by_author_id_lite.cfm
    69 ms 69 ms 1 /root/website/queries/qry_get_current_competition.cfm
    50 ms 13 ms 4 /root/website/site/blocks/membership_advantages.cfm
    43 ms 43 ms 1 /root/website/queries/qry_get_bb_briefs_by_author.cfm
    38 ms 10 ms 4 /root/website/queries/qry_get_member_account_types.cfm
    30 ms 30 ms 1 /root/website/queries/qry_get_author_readalikes_by_id.cfm
    24 ms 24 ms 1 /root/website/actions/adstatus.cfm
    20 ms 20 ms 1 /root/website/queries/qry_get_current_wordplay.cfm
    19 ms 5 ms 4 /root/website/actions/act_spider_tracker.cfm
    19 ms 19 ms 1 /root/website/adzones/AdZonebio.cfm
    18 ms 18 ms 1 /root/website/act_check_login.cfm
    18 ms 18 ms 1 /root/website/queries/qry_get_all_books_by_author_id.cfm
    18 ms 18 ms 1 /root/website/queries/qry_get_member_info.cfm
    10 ms 10 ms 1 /root/website/site/blocks/dsp_book_giveaway.cfm
    6 ms 6 ms 1 /root/website/site/blocks/layout/head.cfm
    2 ms 2 ms 1 /root/website/site/blocks/layout/dsp_header.cfm
    1 ms 1 ms 1 /root/website/queries/qry_get_free_newsletters.cfm
    1 ms 1 ms 1 /root/website/site/blocks/layout/dsp_bottom_block.cfm
    0 ms 0 ms 1 /root/website/Application.cfm
    0 ms 0 ms 1 /root/website/act_libraryIPLogin.cfm
    0 ms 0 ms 1 /root/website/actions/udfs.cfm
    0 ms 0 ms 1 /root/website/banners/ad_594.cfm
    0 ms 0 ms 1 /root/website/formurl2attributes.cfm
    0 ms 0 ms 1 /root/website/js/fbjavascriptsdk.cfm
    0 ms 0 ms 1 /root/website/queries/qry_get_current_ezine.cfm
    0 ms 0 ms 1 /root/website/queries/qry_get_previous_arcs_for_ad.cfm
    0 ms 0 ms 1 /root/website/site/blocks/dsp_border_booktalk.cfm
    0 ms 0 ms 1 /root/website/site/blocks/dsp_header_newsletter.cfm
    0 ms 0 ms 1 /root/website/site/blocks/dsp_top_author_block.cfm
    0 ms 0 ms 1 /root/website/site/blocks/dsp_wordplay.cfm
    0 ms 0 ms 1 /root/website/site/blocks/email_modal.cfm
    0 ms 0 ms 1 /root/website/site/blocks/layout/google_tags.cfm
    0 ms 0 ms 1 /root/website/site/blocks/layout/header_announcement.cfm
    0 ms 0 ms 1 /root/website/site/blocks/layout/main_menu.cfm
    0 ms 0 ms 1 /root/website/site/blocks/layout/main_search.cfm
    1 ms  STARTUP, PARSING, COMPILING, LOADING, & SHUTDOWN
    1058 ms  TOTAL EXECUTION TIME
    red = over 250 ms average execution time


    SQL Queries

    spidercheck (Datasource=bookbrowse_com_new, Time=18ms, Records=1) in /root/website/actions/act_spider_tracker.cfm @ 21:20:08.008
    SELECT	a.bot_number
            FROM	bots a
            WHERE	charindex(a.bot_name, ?) > 0
    		OR a.bot_ip = ?
    Query Parameter Value(s) -
    Parameter #1(cf_sql_varchar) = Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
    Parameter #2(cf_sql_varchar) = 127.0.0.1

    get_member_info (Datasource=bookbrowse_com_new, Time=17ms, Records=0) in /root/website/queries/qry_get_member_info.cfm @ 21:20:08.008
    select 	a.*, 
        		b.member_account_type_name, b.member_account_type_charge, b.member_account_type_charge_frequency,  b.member_account_type_months, 
                c.member_chargetype_name, c.member_chargetype_number, a.member_classification_number, a.member_book_format
    	
        from members a, member_account_types b, member_chargetype c
    	
        where a.member_account_type_number = b.member_account_type_number
    	and a.payment_method_id = c.member_chargetype_number
    	and a.member_number = ?
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 0

    adactive (Datasource=bookbrowse_com_new, Time=23ms, Records=2) in /root/website/actions/adstatus.cfm @ 21:20:08.008
    SELECT	viewby, section
        FROM	adsystem 
        WHERE	active  = 1 
        AND		start_date <= GETDATE()
        AND 	(viewby = ? OR viewby = 'all')
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_VARCHAR) = non

    get_current_ezine (Datasource=bookbrowse_com_new, Time=0ms, Records=1, Cached Query) in /root/website/queries/qry_get_current_ezine.cfm @ 21:20:08.008
    select		top 1 ezine_number, ezine_dt, ezine_image, ezine_brief_description, ezine_introduction
    from		ezines
    where		ezine_active_flag = 1
    and 		ezine_type_number = 4
    and			ezine_dt < getdate()
    order by 	ezine_dt DESC
    get_current_wordplay (Datasource=bookbrowse_com_new, Time=20ms, Records=1) in /root/website/queries/qry_get_current_wordplay.cfm @ 21:20:08.008
    SELECT		a.wordplay_number, a.wordplay_dt, a.wordplay_name, a.wordplay_intro_text, b.wordplay_puzzle_number, b.wordplay_puzzle_question
        FROM		wordplays a 
    	INNER JOIN	wordplay_puzzle_mapping c on c.wordplay_number = a.wordplay_number
    	INNER JOIN	wordplay_puzzles b on b.wordplay_puzzle_number = c.wordplay_puzzle_number
    	WHERE		a.wordplay_number = (	select top 1 a.wordplay_number
                                    from wordplays a, wordplay_puzzles b, wordplay_puzzle_mapping c
                                    where a.wordplay_number = c.wordplay_number
                                    and b.wordplay_puzzle_number = c.wordplay_puzzle_number
                                    and a.wordplay_dt < getdate()
                                    and a.wordplay_expiration_dt > dateadd(day, -1, getdate())
                                    order by a.wordplay_dt asc
                                    )
    get_ComNo (Datasource=bookbrowse_com_new, Time=22ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 21:20:08.008
    SELECT 	TOP 1 	x.competition_number, x.bb_briefs_flag
    	from			competitions x
    	
    		WHERE	x.competition_dt <= getdate()
    		AND		x.competition_expiration_dt > dateadd(d,-1,getdate())
    get_current_competition (Datasource=bookbrowse_com_new, Time=42ms, Records=0) in /root/website/queries/qry_get_current_competition.cfm @ 21:20:08.008
    SELECT 	x.competition_number, x.book_number, x.competition_teaser_title, x.competition_teaser_description, x.competition_intro_text, x.competition_expiration_dt, x.bb_briefs_flag, x.competition_full_info_flag, x.competition_type, x.competition_optin,x.competition_optin_text, 
    				a.book_title as "title",
    				(b.author_first_name + ' ' +  b.author_middle_initial + ' ' + b.author_last_name) as "author",
    	            f.edition_publish_dt AS "hardcover_publish_dt", f.edition_jacket_image as "hardcover_jacket_image",
    				g.edition_publish_dt AS "paperback_publish_dt", g.edition_jacket_image as "paperback_jacket_image"
    	
    		FROM 		competitions x
    		INNER JOIN	books a on a.book_number = x.book_number
    		INNER JOIN	book_author_mapping c on c.book_number = x.book_number
    		INNER JOIN	authors b on c.author_number = b.author_number
    		LEFT JOIN	editions f on a.book_number = f.book_number and f.edition_paperback_flag = 0
    		LEFT JOIN	editions g on a.book_number = g.book_number and g.edition_paperback_flag = 1
    
    		WHERE		x.competition_number = ?
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 0

    get_previous_arcs_for_ad (Datasource=bookbrowse_com_new, Time=0ms, Records=0, Cached Query) in /root/website/queries/qry_get_previous_arcs_for_ad.cfm @ 21:20:08.008
    SELECT 	a.arc_number,a.arc_client_url,a.arc_active_dt, a.arc_off_ad_dt,
    		b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_publisher, 
    		b.ezine_preview_publish_dt, b.ezine_preview_jacket_desc, b.ezine_preview_number_of_pages, b.ezine_preview_bb_comments, b.ezine_preview_isbn13,
    		c.ezine_preview_category_name AS "ezine_preview_category",
    		(select count(*) from arc_allocator d where d.arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) as "reviews",
    		(select (CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,0))) AS numeric(12,0)))+
    				(CASE WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 25 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 50 THEN 0.5
    				 WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 50 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 75 THEN -0.5
    				 ELSE 0
    				 END)
     			from arc_allocator	where arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) AS arcrating,
     			(select (CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,1))) AS numeric(12,1)))from arc_allocator where arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) AS "decrating"
    
    FROM arcs a
    INNER JOIN ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number
    INNER JOIN ezine_preview_categories c ON b.ezine_preview_category_number = c.ezine_preview_category_number
    
    WHERE arc_closed_flag = 1
    AND arc_obc_flag = 0
    AND getdate() >= arc_on_ad_dt
    AND getdate() < arc_off_ad_dt
    
    ORDER BY a.arc_on_ad_dt DESC
    get_future_obc (Datasource=bookbrowse_com_new, Time=15ms, Records=0) in /root/website/queries/qry_get_active_obc.cfm @ 21:20:09.009
    SELECT 		a.arc_forumidfk, a.discourse_flag, a.arc_promo_text, arc_on_ad_dt,
    				b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_jacket_desc, b.ezine_preview_publisher, ezine_preview_publish_dt, ezine_preview_number_of_pages, ezine_preview_isbn, ezine_preview_short_summary,
    	            b.ezine_preview_bb_author_link, ezine_preview_bb_link
    	
    	FROM 		arcs a
    	INNER JOIN 	ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number
    	
    	WHERE 		arc_obc_flag = 1
    
    	AND 		getdate() < arc_on_ad_dt
    	
    		ORDER BY  	NEWID()
    get_active_obc (Datasource=bookbrowse_com_new, Time=18ms, Records=1) in /root/website/queries/qry_get_active_obc.cfm @ 21:20:09.009
    SELECT 		a.arc_forumidfk, a.discourse_flag, a.arc_promo_text,
    				b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_jacket_desc, b.ezine_preview_publisher, ezine_preview_publish_dt, ezine_preview_number_of_pages,  ezine_preview_isbn, ezine_preview_short_summary,
    	            b.ezine_preview_bb_author_link, ezine_preview_bb_link,
    	            c.book_reading_guide
    	
    	FROM 		arcs a
    	INNER JOIN 	ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number
    	LEFT JOIN  	books c on c.book_number = b.ezine_preview_bb_link
    	
    	WHERE 		a.arc_obc_flag = 1
    	AND			a.arc_active_flag = 0
    	AND 		arc_closed_flag = 1
    	AND 		getdate() >= arc_on_ad_dt
    	AND 		getdate() < arc_off_ad_dt
    	ORDER BY  	NEWID()
    get_recent_obc (Datasource=bookbrowse_com_new, Time=44ms, Records=4) in /root/website/queries/qry_get_active_obc.cfm @ 21:20:09.009
    SELECT 		a.arc_forumidfk, a.discourse_flag, a.arc_promo_text,
    				b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_jacket_desc, b.ezine_preview_publisher, ezine_preview_publish_dt, ezine_preview_number_of_pages,  ezine_preview_isbn, ezine_preview_short_summary,
    	            b.ezine_preview_bb_author_link, ezine_preview_bb_link,
    	            c.book_reading_guide
    	
    	FROM 		arcs a
    	INNER JOIN 	ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number
    	LEFT JOIN  	books c on c.book_number = b.ezine_preview_bb_link
    	
    	WHERE a.arc_number IN (select top 4 arc_number
    							from		arcs
    							WHERE 		arc_obc_flag = 1
    							AND			arc_active_flag = 0
    							AND 		arc_closed_flag = 1
    							AND 		getdate() > arc_off_ad_dt
    							ORDER BY	arc_on_ad_dt DESC)
    	ORDER BY  	NEWID()
    get_books_by_author_id (Datasource=bookbrowse_com_new, Time=54ms, Records=6) in /root/website/queries/qry_get_books_by_author_id_lite.cfm @ 21:20:09.009
    select	a.book_number, a.book_title, a.book_sub_title, book_short_summary,
    				(CASE WHEN f.edition_publish_dt < g.edition_publish_dt OR g.edition_publish_dt IS NULL THEN f.edition_publish_dt
                          ELSE g.edition_publish_dt 
                          END) "publish_dt"
    		
            from 	books a
    		inner join book_author_mapping e ON e.book_number = a.book_number
            inner join authors d ON d.author_number = e.author_number
            left outer join editions f ON a.book_number = f.book_number and f.edition_paperback_flag = 0 
       		left outer join editions g ON a.book_number = g.book_number and g.edition_paperback_flag = 1 
    		
           	where 	d.author_number = ?
            and 	a.book_number IN (	select	distinct b.book_number 
            							from	categories a, category_book_mapping b 
                                        where 	a.category_number = b.category_number 
                                        and 	a.category_active_flag = 1)
    
    		order by publish_dt DESC
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 329

    get_author_by_author_id (Datasource=bookbrowse_com_new, Time=15ms, Records=1) in /root/website/queries/qry_get_books_by_author_id_lite.cfm @ 21:20:09.009
    select	d.author_number, d.author_first_name, d.author_middle_initial, d.author_last_name, d.author_pronunciation,
    				i.author_info_number, i.author_number, i.author_info_image, i.author_info_entry_dt,
                    i.author_info_url, i.author_info_interview_summary, i.author_info_interview, i.author_info_biography, i.author_info_copyright_info
                    		
            from 	authors d, author_info i
    		
            where 	d.author_number = ?
            and 	d.author_number = i.author_number
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 329

    get_author_readalikes_by_id (Datasource=bookbrowse_com_new, Time=29ms, Records=29) in /root/website/queries/qry_get_author_readalikes_by_id.cfm @ 21:20:09.009
    SELECT		a.author_number,
    			CASE	WHEN datalength(a.author_middle_initial) > 0 
    					THEN a.author_first_name + ' ' + a.author_middle_initial + ' ' + a.author_last_name
    					ELSE a.author_first_name + ' ' + a.author_last_name
    					END AS "author_full_name",
    			b.book_number, 
    			f.book_title as "book",
    
    			CASE	WHEN datalength(e.author_middle_initial) > 0 
    					THEN e.author_first_name + ' ' + e.author_middle_initial + ' ' + e.author_last_name
    					ELSE e.author_first_name + ' ' + e.author_last_name
    					END AS "liked_author_full_name",
    			e.author_number as "liked_author_number", 
    			g.book_title as "liked_book",
    			c.liked_book_number as "liked_book_number" 
    
    FROM		authors a
    INNER JOIN	book_author_mapping b ON b.author_number = a.author_number
    INNER JOIN	liked c ON c.book_number = b.book_number
    INNER JOIN	book_author_mapping d ON d.book_number = c.liked_book_number
    INNER JOIN	authors e ON e.author_number = d.author_number
    INNER JOIN	books f on f.book_number = b.book_number
    INNER JOIN	books g on g.book_number = c.liked_book_number
    
    WHERE		a.author_number = ?
    
    ORDER BY 	e.author_last_name, e.author_first_name
    Query Parameter Value(s) -
    Parameter #1(cf_sql_integer) = 329

    get_all_books_by_author_id (Datasource=bookbrowse_com_new, Time=18ms, Records=16) in /root/website/queries/qry_get_all_books_by_author_id.cfm @ 21:20:09.009
    select	a.book_number, 
            		'' AS ezine_preview_number,
                    a.book_title, 
                    a.book_sub_title, 
    				(CASE WHEN f.edition_publish_dt < g.edition_publish_dt OR g.edition_publish_dt IS NULL THEN f.edition_publish_dt
                          ELSE g.edition_publish_dt 
                          END) "publish_dt",
                    '' as "jacket"
    		
            from 	books a
    		inner join book_author_mapping e ON e.book_number = a.book_number
            inner join authors d ON d.author_number = e.author_number
    		left outer join editions f ON a.book_number = f.book_number and f.edition_paperback_flag = 0
    		left outer join editions g ON a.book_number = g.book_number and g.edition_paperback_flag = 1
    		
            where 	d.author_number = ?
            and 	a.book_number IN (	select	distinct b.book_number 
            							from	categories a, category_book_mapping b 
                                        where 	a.category_number = b.category_number 
                                        and 	a.category_active_flag = 1)        
            UNION
    
    		select	'' AS book_number,
            		ezine_preview_number, 
    				ezine_preview_title AS "book_title", 
    				ezine_preview_subtitle AS "book_sub_title",
                    ezine_preview_publish_dt AS "publish_dt",
                    ezine_preview_jacket_image as "jacket"
    		
            from 	ezine_previews
    		
            where 	ezine_preview_bb_author_link = ?
            and		ezine_preview_bb_link < 1
            
            order by publish_dt DESC
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 329
    Parameter #2(CF_SQL_INTEGER) = 329

    get_bb_briefs_by_author (Datasource=bookbrowse_com_new, Time=42ms, Records=10) in /root/website/queries/qry_get_bb_briefs_by_author.cfm @ 21:20:09.009
    select	ezine_preview_number, 
    				ezine_preview_title, 
    				ezine_preview_subtitle,
                    ezine_preview_publish_dt ,
                    ezine_preview_jacket_image
    		
            from 	ezine_previews
    		
            where 	ezine_preview_bb_author_link = ?
            and		(ezine_preview_bb_link IS NULL
    				 or ezine_preview_bb_link < 1)
            and		ezine_number > 0
            
    		order by ezine_preview_publish_dt DESC
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 329

    get_ads (Datasource=bookbrowse_com_new, Time=11ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 21:20:09.009
    SELECT		a.adid,	adweight
    	FROM		adsystem a
    	INNER JOIN 	ad_category_mapping b ON b.adid = a.adid
    	WHERE		a.section = ?
    	AND			a.active  = 1
    	AND 		a.start_date <= GETDATE()
    	
    	AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
                
    
    	AND     (b.category_number IN (	SELECT	category_number
    									FROM	category_book_mapping
    									WHERE	book_number = ?)
          		OR 	b.category_number = ?)
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_VARCHAR) = adzonebio
    Parameter #2(CF_SQL_VARCHAR) = 0
    Parameter #3(CF_SQL_VARCHAR) = 0

    get_ads (Datasource=bookbrowse_com_new, Time=3ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 21:20:09.009
    SELECT	a.adid,	adweight
            FROM	adsystem a
            WHERE	a.section = ? 
            AND 	a.active  = 1 
            AND		a.start_date <= GETDATE()	
            
            AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
            AND (select count(*) from ad_category_mapping where datalength(category_number) >= 1 and adid = a.adid) = 0
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_VARCHAR) = adzonebio

    get_member_account_types (Datasource=bookbrowse_com_new, Time=8ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 21:20:09.009
    select member_account_type_number, member_account_type_name, member_account_type_charge, member_account_type_charge_frequency, member_account_type_postscript, member_account_type_months, member_account_type_stripe_lookup_key
    from member_account_types
    where member_account_type_number = (select top 1 member_account_type_number
    									from member_account_types
    									where member_account_type_months = 12
    									and member_account_type_public = 1
    									order by member_account_type_charge ASC)
    									
    or member_account_type_number =		(select top 1 member_account_type_number
    									from member_account_types
    									where member_account_type_months = 3
    									and member_account_type_public = 1
    									order by member_account_type_charge ASC)
    									
    order by member_account_type_sort_order ASC
    get_member_account_types (Datasource=bookbrowse_com_new, Time=18ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 21:20:09.009
    select member_account_type_number, member_account_type_name, member_account_type_charge, member_account_type_charge_frequency, member_account_type_postscript, member_account_type_months, member_account_type_stripe_lookup_key
    from member_account_types
    where member_account_type_number = (select top 1 member_account_type_number
    									from member_account_types
    									where member_account_type_months = 12
    									and member_account_type_public = 1
    									order by member_account_type_charge ASC)
    									
    or member_account_type_number =		(select top 1 member_account_type_number
    									from member_account_types
    									where member_account_type_months = 3
    									and member_account_type_public = 1
    									order by member_account_type_charge ASC)
    									
    order by member_account_type_sort_order ASC
    get_member_account_types (Datasource=bookbrowse_com_new, Time=4ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 21:20:09.009
    select member_account_type_number, member_account_type_name, member_account_type_charge, member_account_type_charge_frequency, member_account_type_postscript, member_account_type_months, member_account_type_stripe_lookup_key
    from member_account_types
    where member_account_type_number = (select top 1 member_account_type_number
    									from member_account_types
    									where member_account_type_months = 12
    									and member_account_type_public = 1
    									order by member_account_type_charge ASC)
    									
    or member_account_type_number =		(select top 1 member_account_type_number
    									from member_account_types
    									where member_account_type_months = 3
    									and member_account_type_public = 1
    									order by member_account_type_charge ASC)
    									
    order by member_account_type_sort_order ASC
    get_books_by_author_id (Datasource=bookbrowse_com_new, Time=13ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 21:20:09.009
    select	a.book_number, 
    				a.book_title, 
    				(CASE WHEN UPPER(LEFT(a.book_title, 2)) = 'A ' THEN SUBSTRING(a.book_title, 3, len(a.book_title) - 2) WHEN UPPER(LEFT(a.book_title, 3)) = 'AN ' THEN SUBSTRING(a.book_title, 4, len(a.book_title) - 3) WHEN UPPER(LEFT(a.book_title, 4)) = 'THE ' THEN SUBSTRING(a.book_title, 5, len(a.book_title) - 4) ELSE a.book_title END) "sort_book_title", 
    				a.book_sub_title, 
    				a.book_entry_dt, 
    				a.book_short_summary, 
    				a.book_jacket_info, 
                    a.book_excerpt, 
                    a.book_reading_guide,
    				d.author_number, d.author_first_name, d.author_middle_initial, d.author_last_name, 
    				f.edition_publish_dt "hardcover_publish_dt", f.edition_number_of_pages "hardcover_number_of_pages", f.edition_isbn "hardcover_isbn", f.edition_isbn13 "hardcover_isbn13",f.edition_jacket_image "hardcover_jacket_image",
    				g.edition_publish_dt "paperback_publish_dt", g.edition_number_of_pages "paperback_number_of_pages", g.edition_isbn "paperback_isbn", g.edition_isbn13 "paperback_isbn13",g.edition_jacket_image "paperback_jacket_image",
    				i.author_info_biography, i.author_info_interview, i.author_info_image, i.author_info_url,
                    (select count(c.book_number) as "author_bookcount" from book_author_mapping c where c.author_number = ?) + (select count(e.ezine_preview_number) as "author_bookcount" from ezine_previews e where e.ezine_preview_bb_author_link = ?) as "authorbookcount"
                    
    		    from books a
                inner join book_author_mapping e ON a.book_number = e.book_number
                inner join authors d ON e.author_number = d.author_number
                inner join author_info i ON d.author_number = i.author_number
                left outer join editions f ON a.book_number = f.book_number and f.edition_paperback_flag = 0
                left outer join editions g ON a.book_number = g.book_number and g.edition_paperback_flag = 1
                            
                where e.author_number = ?
                and a.book_number IN (select distinct b.book_number from categories a, category_book_mapping b where a.category_number = b.category_number and a.category_active_flag = 1)
    			
                order by sort_book_title
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 1204
    Parameter #2(CF_SQL_INTEGER) = 1204
    Parameter #3(CF_SQL_INTEGER) = 1204

    get_author_by_author_id (Datasource=bookbrowse_com_new, Time=9ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 21:20:09.009
    select	d.author_number, d.author_first_name, d.author_middle_initial, d.author_last_name, d.author_pronunciation,
                    CASE	WHEN datalength(d.author_middle_initial) > 0 
                            THEN d.author_first_name + ' ' + d.author_middle_initial + ' ' + d.author_last_name
                            ELSE d.author_first_name + ' ' + d.author_last_name
                            END AS "author_full_name",
    				i.author_info_number, i.author_number, i.author_info_image, i.author_info_entry_dt,
                    i.author_info_url, i.author_info_interview_summary, i.author_info_interview, i.author_info_biography, i.author_info_copyright_info
                    		
            from 	authors d, author_info i
    		
            where 	d.author_number = ?
            and 	d.author_number = i.author_number
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 1204

    get_books_by_author_id (Datasource=bookbrowse_com_new, Time=87ms, Records=4) in /root/website/queries/qry_get_books_by_author_id.cfm @ 21:20:09.009
    select	a.book_number, 
    				a.book_title, 
    				(CASE WHEN UPPER(LEFT(a.book_title, 2)) = 'A ' THEN SUBSTRING(a.book_title, 3, len(a.book_title) - 2) WHEN UPPER(LEFT(a.book_title, 3)) = 'AN ' THEN SUBSTRING(a.book_title, 4, len(a.book_title) - 3) WHEN UPPER(LEFT(a.book_title, 4)) = 'THE ' THEN SUBSTRING(a.book_title, 5, len(a.book_title) - 4) ELSE a.book_title END) "sort_book_title", 
    				a.book_sub_title, 
    				a.book_entry_dt, 
    				a.book_short_summary, 
    				a.book_jacket_info, 
                    a.book_excerpt, 
                    a.book_reading_guide,
    				d.author_number, d.author_first_name, d.author_middle_initial, d.author_last_name, 
    				f.edition_publish_dt "hardcover_publish_dt", f.edition_number_of_pages "hardcover_number_of_pages", f.edition_isbn "hardcover_isbn", f.edition_isbn13 "hardcover_isbn13",f.edition_jacket_image "hardcover_jacket_image",
    				g.edition_publish_dt "paperback_publish_dt", g.edition_number_of_pages "paperback_number_of_pages", g.edition_isbn "paperback_isbn", g.edition_isbn13 "paperback_isbn13",g.edition_jacket_image "paperback_jacket_image",
    				i.author_info_biography, i.author_info_interview, i.author_info_image, i.author_info_url,
                    (select count(c.book_number) as "author_bookcount" from book_author_mapping c where c.author_number = ?) + (select count(e.ezine_preview_number) as "author_bookcount" from ezine_previews e where e.ezine_preview_bb_author_link = ?) as "authorbookcount"
                    
    		    from books a
                inner join book_author_mapping e ON a.book_number = e.book_number
                inner join authors d ON e.author_number = d.author_number
                inner join author_info i ON d.author_number = i.author_number
                left outer join editions f ON a.book_number = f.book_number and f.edition_paperback_flag = 0
                left outer join editions g ON a.book_number = g.book_number and g.edition_paperback_flag = 1
                            
                where e.author_number = ?
                and a.book_number IN (select distinct b.book_number from categories a, category_book_mapping b where a.category_number = b.category_number and a.category_active_flag = 1)
    			
                order by sort_book_title
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 181
    Parameter #2(CF_SQL_INTEGER) = 181
    Parameter #3(CF_SQL_INTEGER) = 181

    get_author_by_author_id (Datasource=bookbrowse_com_new, Time=21ms, Records=1) in /root/website/queries/qry_get_books_by_author_id.cfm @ 21:20:09.009
    select	d.author_number, d.author_first_name, d.author_middle_initial, d.author_last_name, d.author_pronunciation,
                    CASE	WHEN datalength(d.author_middle_initial) > 0 
                            THEN d.author_first_name + ' ' + d.author_middle_initial + ' ' + d.author_last_name
                            ELSE d.author_first_name + ' ' + d.author_last_name
                            END AS "author_full_name",
    				i.author_info_number, i.author_number, i.author_info_image, i.author_info_entry_dt,
                    i.author_info_url, i.author_info_interview_summary, i.author_info_interview, i.author_info_biography, i.author_info_copyright_info
                    		
            from 	authors d, author_info i
    		
            where 	d.author_number = ?
            and 	d.author_number = i.author_number
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 181

    get_member_account_types (Datasource=bookbrowse_com_new, Time=7ms, Records=2) in /root/website/queries/qry_get_member_account_types.cfm @ 21:20:09.009
    select member_account_type_number, member_account_type_name, member_account_type_charge, member_account_type_charge_frequency, member_account_type_postscript, member_account_type_months, member_account_type_stripe_lookup_key
    from member_account_types
    where member_account_type_number = (select top 1 member_account_type_number
    									from member_account_types
    									where member_account_type_months = 12
    									and member_account_type_public = 1
    									order by member_account_type_charge ASC)
    									
    or member_account_type_number =		(select top 1 member_account_type_number
    									from member_account_types
    									where member_account_type_months = 3
    									and member_account_type_public = 1
    									order by member_account_type_charge ASC)
    									
    order by member_account_type_sort_order ASC
    get_arcs_for_ad (Datasource=bookbrowse_com_new, Time=51ms, Records=0) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 21:20:09.009
    SELECT 	top 10 a.arc_number,arc_promo_text,
    		b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_publish_dt, 
    		(select (CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,0))) AS numeric(12,0)))+
    				(CASE WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 25 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 50 THEN 0.5
    				 WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 50 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 75 THEN -0.5
    				 ELSE 0
    				 END)
     			from arc_allocator	where arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) AS arcrating
    
    FROM arcs a
    INNER JOIN ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number
    
    WHERE arc_closed_flag = 1
    AND arc_obc_flag = 0
    AND getdate() >= arc_on_ad_dt
    AND (select count(*) from arc_allocator d where d.arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) > 1
    and getdate() <= dateadd(day,1,a.arc_off_ad_dt)
    
    ORDER BY NEWID()
    get_arcs_for_ad (Datasource=bookbrowse_com_new, Time=32ms, Records=3) in /root/website/queries/qry_get_arcs_for_ad.cfm @ 21:20:09.009
    SELECT 	top 3 a.arc_number,arc_promo_text,
    			b.ezine_preview_number, b.ezine_preview_title, b.ezine_preview_subtitle, b.ezine_preview_jacket_image, b.ezine_preview_author, b.ezine_preview_publish_dt, 
    			(select (CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,0))) AS numeric(12,0)))+
    					(CASE WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 25 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 50 THEN 0.5
    					 WHEN right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) > 50 AND right(CAST(AVG(CAST(arc_allocator_review_rating AS numeric(12,2))) AS numeric(12,2)),2) < 75 THEN -0.5
    					 ELSE 0
    					 END)
    				from arc_allocator	where arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) AS arcrating
    
    	FROM arcs a
    	INNER JOIN ezine_previews b ON b.ezine_preview_number = a.ezine_preview_number
    
    	WHERE arc_closed_flag = 1
    	AND arc_obc_flag = 0
    	AND getdate() >= arc_on_ad_dt
    	AND (select count(*) from arc_allocator d where d.arc_number = a.arc_number and arc_allocator_review_approved_flag = 1) > 1
    
    	ORDER BY a.arc_off_ad_dt DESC
    get_ads (Datasource=bookbrowse_com_new, Time=50ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 21:20:09.009
    SELECT		a.adid,	adweight
    	FROM		adsystem a
    	INNER JOIN 	ad_category_mapping b ON b.adid = a.adid
    	WHERE		a.section = ?
    	AND			a.active  = 1
    	AND 		a.start_date <= GETDATE()
    	
    	AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
                
    
    	AND     (b.category_number IN (	SELECT	category_number
    									FROM	category_book_mapping
    									WHERE	book_number = ?)
          		OR 	b.category_number = ?)
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_VARCHAR) = adzone6
    Parameter #2(CF_SQL_VARCHAR) = 0
    Parameter #3(CF_SQL_VARCHAR) = 0

    get_ads (Datasource=bookbrowse_com_new, Time=50ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 21:20:09.009
    SELECT	a.adid,	adweight
            FROM	adsystem a
            WHERE	a.section = ? 
            AND 	a.active  = 1 
            AND		a.start_date <= GETDATE()	
            
            AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
            AND (select count(*) from ad_category_mapping where datalength(category_number) >= 1 and adid = a.adid) = 0
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_VARCHAR) = adzone6

    get_type (Datasource=bookbrowse_com_new, Time=17ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 21:20:09.009
    SELECT	a.start_date, a.adid, a.end_date, a.camp_views, a.image_name, a.alt_text, a.views, a.code, a.adsize
            FROM	adsystem a
            WHERE	a.adid = ?
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 1112

    get_quotes (Datasource=bookbrowse_com_new, Time=9ms, Records=1) in /root/website/site/blocks/dsp_book_giveaway.cfm @ 21:20:09.009
    select top 1 ezine_number, ezine_quote, ezine_quote_title
    	    from ezines
    	    where len(ezine_quote_title) > 1
    	    order by newid()
    get_free_newsletters (Datasource=bookbrowse_com_new, Time=0ms, Records=4, Cached Query) in /root/website/queries/qry_get_free_newsletters.cfm @ 21:20:09.009
    SELECT 	*
        FROM 	free_newsletters
    get_ads (Datasource=bookbrowse_com_new, Time=20ms, Records=0) in /root/website/adsystem/adsystem_mod.cfm @ 21:20:09.009
    SELECT		a.adid,	adweight
    	FROM		adsystem a
    	INNER JOIN 	ad_category_mapping b ON b.adid = a.adid
    	WHERE		a.section = ?
    	AND			a.active  = 1
    	AND 		a.start_date <= GETDATE()
    		 	AND a.adid NOT IN (?) 
    	AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
                
    
    	AND     (b.category_number IN (	SELECT	category_number
    									FROM	category_book_mapping
    									WHERE	book_number = ?)
          		OR 	b.category_number = ?)
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_VARCHAR) = showcase_track
    Parameter #2(CF_SQL_INTEGER) = 1112
    Parameter #3(CF_SQL_VARCHAR) = 0
    Parameter #4(CF_SQL_VARCHAR) = 0

    get_ads (Datasource=bookbrowse_com_new, Time=29ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 21:20:09.009
    SELECT	a.adid,	adweight
            FROM	adsystem a
            WHERE	a.section = ? 
            AND 	a.active  = 1 
            AND		a.start_date <= GETDATE()	
            		AND a.adid NOT IN (?) 
            AND (a.viewby LIKE '%n%' OR a.viewby = 'all')
            AND (select count(*) from ad_category_mapping where datalength(category_number) >= 1 and adid = a.adid) = 0
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_VARCHAR) = showcase_track
    Parameter #2(CF_SQL_INTEGER) = 1112

    get_type (Datasource=bookbrowse_com_new, Time=33ms, Records=1) in /root/website/adsystem/adsystem_mod.cfm @ 21:20:09.009
    SELECT	a.start_date, a.adid, a.end_date, a.camp_views, a.image_name, a.alt_text, a.views, a.code, a.adsize
            FROM	adsystem a
            WHERE	a.adid = ?
    Query Parameter Value(s) -
    Parameter #1(CF_SQL_INTEGER) = 594


    Scope Variables

    CGI Variables:
    AUTH_PASSWORD=
    AUTH_TYPE=
    AUTH_USER=
    CERT_COOKIE=
    CERT_FLAGS=
    CERT_ISSUER=
    CERT_KEYSIZE=
    CERT_SECRETKEYSIZE=
    CERT_SERIALNUMBER=
    CERT_SERVER_ISSUER=
    CERT_SERVER_SUBJECT=
    CERT_SUBJECT=
    CF_TEMPLATE_PATH=/root/website/biographies/index.cfm
    CONTENT_LENGTH=
    CONTENT_TYPE=
    CONTEXT_PATH=
    GATEWAY_INTERFACE=
    HTTPS=
    HTTPS_KEYSIZE=
    HTTPS_SECRETKEYSIZE=
    HTTPS_SERVER_ISSUER=
    HTTPS_SERVER_SUBJECT=
    HTTP_ACCEPT=*/*
    HTTP_ACCEPT_ENCODING=gzip, br, zstd, deflate
    HTTP_ACCEPT_LANGUAGE=
    HTTP_CONNECTION=upgrade
    HTTP_COOKIE=CFID=4074536; CFGLOBALS=urltoken%3DCFID%23%3D4074536%26CFTOKEN%23%3Dbcc4d45b862fe3a9%2DFF15477D%2DB3B1%2D0F7C%2D0B04A5F153DC9DB3%23lastvisit%3D%7Bts%20%272026%2D05%2D31%2021%3A20%3A08%27%7D%23hitcount%3D2%23timecreated%3D%7Bts%20%272026%2D05%2D31%2021%3A20%3A05%27%7D%23cftoken%3Dbcc4d45b862fe3a9%2DFF15477D%2DB3B1%2D0F7C%2D0B04A5F153DC9DB3%23cfid%3D4074536%23; CFCLIENT_BOOKBROWSE=order%3Dp%23member%5Fnumber%3D0%23member%5Factive%5Fflag%3D0%23member%5Flogged%5Fin%5Fflag%3D0%23library%5Fuser%5Fflag%3D0%23view%3Dbooks%23; CFTOKEN=bcc4d45b862fe3a9-FF15477D-B3B1-0F7C-0B04A5F153DC9DB3; FREEACCESSCOUNT=1
    HTTP_HOST=dev.bookbrowse.com
    HTTP_REFERER=
    HTTP_URL=
    HTTP_USER_AGENT=Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
    LOCAL_ADDR=127.0.0.1
    PATH_INFO=/author_number/329/lee-child
    PATH_TRANSLATED=/root/website/biographies/index.cfm
    QUERY_STRING=
    REMOTE_ADDR=127.0.0.1
    REMOTE_HOST=127.0.0.1
    REMOTE_USER=
    REQUEST_METHOD=GET
    SCRIPT_NAME=/biographies/index.cfm
    SERVER_NAME=dev.bookbrowse.com
    SERVER_PORT=8500
    SERVER_PORT_SECURE=0
    SERVER_PROTOCOL=HTTP/1.1
    SERVER_SOFTWARE=
    WEB_SERVER_API=
    
    Client Variables:
    cfid=4074536
    cftoken=bcc4d45b862fe3a9-FF15477D-B3B1-0F7C-0B04A5F153DC9DB3
    hitcount=2
    lastvisit={ts '2026-05-31 21:20:08'}
    library_user_flag=0
    member_active_flag=0
    member_logged_in_flag=0
    member_number=0
    order=p
    timecreated={ts '2026-05-31 21:20:05'}
    urltoken=CFID=4074536&CFTOKEN=bcc4d45b862fe3a9-FF15477D-B3B1-0F7C-0B04A5F153DC9DB3
    view=books
    
    Cookie Variables:
    CFCLIENT_BOOKBROWSE=order=p#member_number=0#member_active_flag=0#member_logged_in_flag=0#library_user_flag=0#view=books#
    CFGLOBALS=urltoken=CFID#=4074536&CFTOKEN#=bcc4d45b862fe3a9-FF15477D-B3B1-0F7C-0B04A5F153DC9DB3#lastvisit={ts '2026-05-31 21:20:08'}#hitcount=2#timecreated={ts '2026-05-31 21:20:05'}#cftoken=bcc4d45b862fe3a9-FF15477D-B3B1-0F7C-0B04A5F153DC9DB3#cfid=4074536#
    CFID=4074536
    CFTOKEN=bcc4d45b862fe3a9-FF15477D-B3B1-0F7C-0B04A5F153DC9DB3
    FREEACCESSCOUNT=1
    
    Session Variables:
    cfid=4074536
    cftoken=bcc4d45b862fe3a9-FF15477D-B3B1-0F7C-0B04A5F153DC9DB3
    sessionid=BOOKBROWSE_4074536_bcc4d45b862fe3a9-FF15477D-B3B1-0F7C-0B04A5F153DC9DB3
    urltoken=CFID=4074536&CFTOKEN=bcc4d45b862fe3a9-FF15477D-B3B1-0F7C-0B04A5F153DC9DB3
    
    URL Parameters:
    author_number=329
    lee-child=
    
    Debug Rendering Time: 10 ms