Запрос Sequilize, чтобы найти JSON в массиве не работает - PullRequest
0 голосов
/ 17 апреля 2020

Запрос, который я пытаюсь выполнить:

select * from user_roles where user_role_actions @> '[{"action": "/api/users","method": "GET","menu": "Manage users"}]'

Данные в базе данных:

{
    "data": [
        {
            "user_role_id": 1,
            "user_role_name": "Admin                                                                                                                                                                                                                                                          ",
            "user_role_actions": "[{action: '/api/users', method: 'GET', menu: 'Manage users'},{action: '/api/users', method: 'POST', menu: 'Add user'},{action: '/api/users/:id', method: 'GET', menu: 'View user'},{action: '/api/users/:id', method: 'PUT', menu: 'Update user'}]",
            "user_role_job_fields": "\"{'job_media','job_quote','job_invoice', 'job_client','created_by', 'job_status', 'job_source', 'job_job_template_name', 'job_job_template_data' }\"",
            "user_role_audit_logs": "\"{'job_quote','job_invoice', 'job_client','job_status'}\"",
            "createdAt": "2020-04-10T07:19:44.543Z",
            "updatedAt": "2020-04-13T08:50:23.728Z"
        }
    ]
}

Запрос выполнен успешно, но он не возвращает никакого результата. Total query runtime: 10 ms. 0 rows retrieved.

Знаете, что не так?

1 Ответ

0 голосов
/ 23 апреля 2020
MY JSON is not right.
there are some JSON example
Ex for  a JSON array
Ex. ["one", "two", "three"]

Ex for a JSON object
Ex. { "one": 1, "two": 2, "three": 3 }
...