Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7032809
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 28, 20262026-05-28T00:58:58+00:00 2026-05-28T00:58:58+00:00

I have a table which has hierarchy in it. Lets start with Id =

  • 0

I have a table which has hierarchy in it.

Lets start with Id = 5; this is the child. (a given start parameter – from user)

Algorithm:

  • give me the first value which you have encountered for id = 5
  • if you haven’t found value for id = 5, go to its parent and give me his id
  • if this parent also doesn’t have a value – go to its parent … etc (until parent has no parent – parentId = 0)

p.s. the result here should be 7.

if 7 value was empty so : 9

end if 9 was also empty so : 1

I’m trying to do this with CTE but no success..

p.s. I want a solution with CTE. 🙂

enter image description here

What I have tried (don’t even look at it – it doesn’t work):

WITH cte AS (
SELECT  
       id,VALUE,parentid

  FROM [test].[dbo].[tmp]   WHERE id=5
  UNION ALL

  SELECT  
      id,VALUE,parentid
  FROM  [tmp]   WHERE parentId=cte.parentId ) //ERROR : The multi-part identifier "cte.parentId" could not be bound.
  SELECT * FROM cte
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-28T00:58:59+00:00Added an answer on May 28, 2026 at 12:58 am

    You need to join in your cte:

    with cte as (
    select
        id,
        value,
        parentid
    from
        [tmp]
    where 
        id=5
    union all
    select
        tmp.id,
        coalesce(cte.value, tmp.value) as value,
        tmp.parentid
    from  
        [tmp]
        inner join cte on
            tmp.id = cte.parentId
    )
    select
        max(value) as value
    from
        cte
    

    If you’re going to reference a table, you need to make sure that you’ve joined it somewhere in your from clause. In this case, you hadn’t, which is why it was throwing the error.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a table User which has an identity column UserID , now what
I have a hierarchy of tables 3 levels deep (QualificaionType has many QualificationGroups, which
I have a table which has two varchar(Max) columns Column 1 Column 2 -----------------------
I have a table which has several one to many relationships with other tables.
I have a table which has two text boxes and an image beside it
I have a table which has employee relationship defined within itself. i.e. EmpID Name
I have a table which has essentially boolean values in a legacy database. The
I have a table which has a column called Direct of type char(1). It's
if i have a table which has columns with fixed lenght, Will mySQL count
I have a table y Which has two columns a and b Entries are:

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.