I need help with a SQL query. My problem is better explained with some examples.
Say I have my data like this pulling from two tables, ORDR and RDRO. The first table (ORDR) contains all the data about the order except for the items. The second table (RDRO) contains all the item information for an order. Both tables can be joined using [docNum].
T0.docNum | T1.itemCode
123 EDS100
123 DDS200
123 DDS500
124 LLS220
124 LDS254
125 FGD450
125 LDS552
125 DDS200
125 EDD200
I want to return all rows when 1 item number meets the criteria.
Say in this case I want all the rows of the order when one row is equal to DDS200 would give this result:
T0.docNum | T1.itemCode
123 EDS100
123 DDS200 -- match
123 DDS500
125 FGD450
125 LDS552
125 DDS200 -- match
125 EDD200
I'm sure this is trivial, I have tried the following:
SELECT T0.docNum, T1.itemCode
FROM ordr T0 INNER JOIN rdro T1 ON T0.docNum = T1.docNum
WHERE T1.itemCode like 'DDS200';
this only returns the rows that meet the criteria, not all the rows of the order as shown above.
Also, please note I'm on SQL server.
Thanks for your help
order
.items
have both columns (doc
anditem
). Unlessdoc
is different thandoc#
... In any case, you can easily adjust the queries provided with your table and column names.doc#
column three different things and I have no idea ifitem#
is in both tables. If you can't abstract your real table and column names in a logical and consistent way, please just use your actual table and column names.