Tengo un objeto Javascript que se pasa a AlaSQL como:
const details = { "returnCode": 0, "someProperty": { "results": [ { "resultId": 1234, "resultProperty1": "asdf", "notWantedProperty": "notThis", "anotherNotWantedProperty": "orAnyOther" }, { "resultId": 5678, "resultProperty1": "qwert", "notWantedProperty": "notThisEither" } ] } } results = alasql(query, [details]); Estoy tratando de usar alasql para filtrar como cualquiera de estos con una consulta WHERE "resultProperty1 == "asdf" y obtengo un resultado como:
{ "returnCode": 0, "results": [ { "resultId": 1234, "resultProperty1": "asdf" }, ] } -- or -- { "returnCode": 0, "results": { "resultId": 1234, "resultProperty1": "asdf" } } -- or -- { "returnCode": 0, "someProperty": { "results": { "resultId": 1234, "resultProperty1": "asdf" } } } -- or -- { "returnCode": 0, "someProperty": { "results": [ { "resultId": 1234, "resultProperty1": "asdf" } ] } }Tengo problemas para hacer referencia a la matriz interna. He intentado consultas como:
SEARCH / AS @RES results / WHERE([0]='someProperty'] @RES FROM ? SELECT * FROM (SELECT [1]->results AS results FROM ? WHERE [0] = 'someProperty')Pero está extrayendo todos los resultados de la matriz interna, o ninguno de ellos. Seleccionar y organizar los campos del objeto en los resultados también está resultando difícil.
Hasta ahora, mi intento más cercano es:
SEARCH / AS @RES results / WHERE(resultId=1234) RETURN (resultId AS `results->resultId`, resultProperty1 AS `results->resultId`) FROM ?que esta regresando
[ { "results": { "resultId": 1234, "resultProperty1": "asdf" } ]