I encountered an issue with SQLDatabaseToolkit where I couldn't configure it to execute multiple SQL queries based on the previously retrieved value from a column in the initial query
Labels: name: area: agent, name: auto:bug

### System Info

aws 

### Who can help?

_No response_

### Information

- [ ] The official example notebooks/scripts
- [ ] My own modified scripts

### Related Components

- [ ] LLMs/Chat Models
- [ ] Embedding Models
- [ ] Prompts / Prompt Templates / Prompt Selectors
- [ ] Output Parsers
- [ ] Document Loaders
- [ ] Vector Stores / Retrievers
- [ ] Memory
- [ ] Agents / Agent Executors
- [ ] Tools / Toolkits
- [ ] Chains
- [ ] Callbacks/Tracing
- [ ] Async

### Reproduction

from langchain.prompts.chat import ChatPromptTemplate
updated_prompt = ChatPromptTemplate.from_messages(
    [
        ("system", 
         """
         You are identifying information from the 'customer' table in the SQL Database. You should query the schema of the 'customer' table only once.
         
         
         Here's the list of relevant column names and their column description from schema 'customer' and their descriptions:
        - column name: "job"
          column description: "Job Number or Job Identifier.

        - column name: "job_type"
        - column description: "This column provides information about the status of a job. you can check this column for any of the following job status values:

                                        'Progress'
                                        'Complete'



        
         Use the following context to create the SQL query. Context:
         
         
         1.Comprehend the column names and their respective descriptions provided for the purpose of selecting columns when crafting an SQL query.

         2.If the user inquires about the type of job 
         
         select only the columns mapped to job_status and respond to the user:
         job_type= 'Progress, then fetch 'name' and 'start time'
         job_status = 'Complete' , then fetch 'name', 'completed', and 'date'
         
        """
         ),
        ("user", "{question}\n ai: "),
    ]
)


os.environ["OPENAI_CHAT_MODEL"] = 'gpt-3.5-turbo-16k'


llm = ChatOpenAI(model=os.getenv("OPENAI_CHAT_MODEL"), temperature=0)

def run_sql_query_prompt(query, db):
    greeting_response = detect_greeting_or_gratitude(query)
    if greeting_response:
        return greeting_response
    
    try:
        llm = ChatOpenAI(model=os.getenv("OPENAI_CHAT_MODEL"), temperature=0)
        sql_toolkit = SQLDatabaseToolkit(db=db, llm=llm)
        sql_toolkit.get_tools()
        sqldb_agent = create_sql_agent(
            llm=llm,
            toolkit=sql_toolkit,
            agent_type=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
            #verbose=True,
            handle_parsing_errors=True,
            use_query_checker=True,
        )
        formatted_prompt = updated_prompt.format(question=query)
        result = sqldb_agent.run(formatted_prompt)
        return result
    except Exception as e:
        return f"Error executing SQL query: {str(e)}"

### Expected behavior

it should first fetch the job_type to understand whether it's 'Progress' or 'Complete'

then if 
         job_type= 'Progress, then fetch 'name' and 'start time' columns
         job_status = 'Complete' , then fetch 'name', 'completed', and 'date' columns