Link to home
Create AccountLog in
Avatar of morinia
moriniaFlag for United States of America

asked on

Looping through a row and retrieving data relative to the value in each column

I have a long running query because it is reading a very large database.  The issue is there is a string of codes that each have an order number.  There can be as many as 30 on a  line. The order is then matched to another table to get the actual value.  What is the best way to loop through this row to get the codes for all of the 20 values.  This is an SQL statement.
Avatar of lcohan
lcohan
Flag of Canada image

The issue is there is a string of codes that each have an order number.

How are they delimited in that string? You could use a string split function and actually SQL has its own from 2016 and up - just have a look here https://docs.microsoft.com/en-us/sql/t-sql/functions/string-split-transact-sql?view=sql-server-2016
Essentially is the same thing if you don't have it depending on the delimiters you could write your own or if you google sql seting split function examples I bet you'll find one. Like this for example https://sqlperformance.com/2012/07/t-sql-queries/split-strings
Avatar of morinia

ASKER

It is not a string.  It is a column than can have multiple values.  Currently I have multiple joins of the same table and check the value.  It will be value1, or value2 or value3........value30.  I then use that value as a key to read another table.  Currently I am using the same two table just giving them different alias.
Avatar of slightwv (䄆 Netminder)
slightwv (䄆 Netminder)

If you have a single column that you need to look up in two tables, it is a simple join.  I'm guessing that isn't the solution so I'm not understanding your tables.

Please post sample data and expected results.  We don't need all 30 values.  Just 2 or 3 to get the general concept.
Avatar of morinia

ASKER

Attached is a very simple query with four columns.  I am doing this 30 times.  I am hoping to find a more efficient approach.
Sample.txt
Do you have the index on this colum?
ASKER CERTIFIED SOLUTION
Avatar of slightwv (䄆 Netminder)
slightwv (䄆 Netminder)

Link to home
membership
Create an account to see this answer
Signing up is free. No credit card required.
Create Account
Avatar of morinia

ASKER

Thanks so much. It wither perfectly.