diff --git a/apps/api/src/services/data-provider/data-provider.service.ts b/apps/api/src/services/data-provider/data-provider.service.ts index cfacab3231..7bd06b1c99 100644 --- a/apps/api/src/services/data-provider/data-provider.service.ts +++ b/apps/api/src/services/data-provider/data-provider.service.ts @@ -403,12 +403,8 @@ export class DataProviderService implements OnModuleInit { })}::timestamp` : Prisma.empty; - const dataSources = aItems.map(({ dataSource }) => { - return dataSource; - }); - - const symbols = aItems.map(({ symbol }) => { - return symbol; + const assetProfileIdentifiers = aItems.map(({ dataSource, symbol }) => { + return Prisma.sql`(${dataSource}::"DataSource", ${symbol})`; }); try { @@ -416,8 +412,7 @@ export class DataProviderService implements OnModuleInit { .$queryRaw` SELECT * FROM "MarketData" - WHERE "dataSource"::text IN (${Prisma.join(dataSources)}) - AND "symbol" IN (${Prisma.join(symbols)}) + WHERE ("dataSource", "symbol") IN (${Prisma.join(assetProfileIdentifiers)}) ${granularityQuery} ${rangeQuery} ORDER BY date;`;