Вы должны использовать JOIN или использовать EXISTS с присоединением к предложению WHERE.
SELECT PD.PRACTITIONERID, PD.LastName, PD.FirstName, PD.NationalProviderID
FROM vwPractitionerDemographics PD
WHERE EXISTS
(SELECT 1
FROM vwPractitionerLocations
WHERE PracticeTaxIDNumber = '59-1205165'
AND vwPractitionerLocations.[matching column here] = PD.[matching column here])
SELECT PD.PRACTITIONERID, PD.LastName, PD.FirstName, PD.NationalProviderID
FROM vwPractitionerDemographics PD INNER JOIN vwPractitionerLocations ON vwPractitionerLocations.[matching column here] = PD.[matching column here])
WHERE PracticeTaxIDNumber = '59-1205165'
SQL Server не может догадаться о том, как вы хотите, чтобы таблицы связывались друг с другом в запрос, вы должны предоставить эту информацию явно. Использование IN
, в данном случае , was not correct as it should be used when evaluating multiple values. In your case you are passing a single value to be evaluated. If you really want to use IN then you would write
... WHERE PracticeTaxIDNumber IN ('59 -1205165 ') `, но я думаю, вы можете видеть, что это не имеет смысла для 1 значения.