Я пытаюсь выполнить рекурсивное присвоение соединения идентификационным номерам лицензий до тех пор, пока количество «не закончится» с использованием стиля CTE, объединение всего рекурсивного оператора, но я не могу полностью заставить peices работать вместе.Рекурсивное присвоение sql до тех пор, пока количество не закончится
Проблема, с которой я сталкиваюсь, заключается в том, что многие лицензии могут охватывать 1 экземпляр, поэтому, когда я присоединяюсь к таблице лицензий, я получаю много строк. Любые предложения будут приветствоваться.
TABLE: INSTALLEDSW
INSTALLEDSW_ID PRODUCT_ID PRODUCT_NAME
200 1000 MY SOFTWARE
201 1000 MY SOFTWARE
202 1000 MY SOFTWARE
203 1000 MY SOFTWARE
204 1000 MY SOFTWARE
205 1000 MY SOFTWARE
206 1000 MY SOFTWARE
207 1000 MY SOFTWARE
208 1000 MY SOFTWARE
TABLE: LICENSE
LICENSE_ID PRODUCT_ID LICENSE_NAME QUANTITY
100 1000 MY LICENSE 1
101 1000 MY LICENSE 5
102 1000 MY LICENSE 1
Desired Result Set
INSTALLEDSW_ID LICENSE_ID
200 100
201 101
202 101
203 101
204 101
205 101
206 102
207 (null)
208 (null)
Не могли бы вы показать запрос, который не совсем работает? – 2013-02-28 14:47:37
Как связаны таблицы 'installedsw' и' license'? Это просто «product_id»? Как 'INSTALLEDSW_ID' относится к' LICENSE_ID'? – Taryn
Таблицы INSTALLEDSW и LICENSE объединяются с помощью ПРОИЗВОДСТВА. Таким образом, в основном LICENSE.PRODUCTID говорит, что «эта лицензия может охватывать продукт XYZ». – user1527312