Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Trying to understand more about Strapi and GraphQL #56

Closed
bahdcoder opened this issue Oct 4, 2020 · 1 comment
Closed

Trying to understand more about Strapi and GraphQL #56

bahdcoder opened this issue Oct 4, 2020 · 1 comment

Comments

@bahdcoder
Copy link

bahdcoder commented Oct 4, 2020

Hello. I'm pretty new to Graph QL, and I've been looking into how Strapi handles the n+1 problem of loading data. I set the backend database debug: true, and I ran the following graphql query on the Foodadvisor application:

GraphQL query

query {
  restaurants(limit: 12) {
    id
    description
    district
    cover {
      url
    }
    category {
      name
    }
    name
    note
    price
    reviews {
      note
      content
    }
  }
  restaurantsConnection {
    aggregate {
      count
    }
  }
  categories {
    id
    name
  }
}

Here's part of the debug logs I see. Please keep in mind this is only for the restaurants part of the query:

Logs

{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '26914f81-24ad-4a92-92cd-1b40a0770cd2',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'ee6f0427-bf2f-4140-9ba4-c78344d0fd99',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '675cd881-1690-47aa-ad14-855ce1d65bdb',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 1 ],
  __knexQueryUid: '8c02a128-5b94-4807-9b95-08fef7f03625',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 2 ],
  __knexQueryUid: '5aec981c-7e13-4508-8964-6482499ca735',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 3 ],
  __knexQueryUid: 'e4932c32-1ca0-4d27-bc15-488e6469e425',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 4 ],
  __knexQueryUid: 'a5e2a4d1-cc5c-457d-a106-0864ea3b152d',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 5 ],
  __knexQueryUid: '752310fe-ee55-4f17-b363-9665eae31c20',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 6 ],
  __knexQueryUid: '18ee0569-0d77-44d2-8920-be9ef7bd1860',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 7 ],
  __knexQueryUid: 'a9673a0f-e0a7-4306-8d25-3a266db0abac',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 9 ],
  __knexQueryUid: '5ddf848c-eccd-478f-8981-ec6ef2f2572e',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 10 ],
  __knexQueryUid: 'a7042eb5-0cec-4109-a4af-b138c4b511ae',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 11 ],
  __knexQueryUid: '9f18b66b-bc37-4ace-8b8e-877966ad61c6',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 12 ],
  __knexQueryUid: '3953a8b7-e9ea-47c9-954c-070a5fc629bf',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}

And the same thing for the views part of the query:

Logs

{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '1' ],
  __knexQueryUid: '98410d14-8716-4c63-9779-a6be3b36b66d',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '2' ],
  __knexQueryUid: '99811e9c-8eb1-45de-b4cd-5224c52fcad9',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '3' ],
  __knexQueryUid: 'bd8da4e2-a5f1-45ef-adf2-f72b3a1a9b6f',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '4' ],
  __knexQueryUid: 'fd15a99a-4b1d-4333-9ceb-fa5e4c9661c9',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '5' ],
  __knexQueryUid: '59ab6f1f-987b-4250-b0b8-127f8d9df48f',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '6' ],
  __knexQueryUid: 'a72dd187-a7a6-414d-8d85-9eef46390b26',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '7' ],
  __knexQueryUid: 'f71ae3ca-d10f-4a29-8891-bbf2947baabd',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '8' ],
  __knexQueryUid: 'f436cecf-672c-4366-b43b-2fc6f45b0600',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '9' ],
  __knexQueryUid: 'fad32e0c-a484-4ee6-9ab4-82a4d5e436ed',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '10' ],
  __knexQueryUid: 'f852b6d3-bcbd-46da-ace3-725a92f55d9a',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '11' ],
  __knexQueryUid: 'e01ef6f7-73f1-4e6c-b88b-8c43f2c13149',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '12' ],
  __knexQueryUid: 'a373630f-151c-46ae-8a01-e0a9fa111db8',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}

And the same thing for the categories part of the query:

Logs

```js

{
method: 'select',
options: {},
timeout: false,
cancelOnTimeout: false,
bindings: [ '1' ],
__knexQueryUid: '483c505a-bcb1-4f03-9b1a-97369bf6d3a5',
sql: 'select distinct categories.* from categories where categories.id in (?)'
}
{
method: 'select',
options: {},
timeout: false,
cancelOnTimeout: false,
bindings: [ '6' ],
__knexQueryUid: '78004bc9-f200-427b-bc65-db490016c467',
sql: 'select distinct categories.* from categories where categories.id in (?)'
}
{
method: 'select',
options: {},
timeout: false,
cancelOnTimeout: false,
bindings: [ '8' ],
__knexQueryUid: 'bf2bed14-71af-4663-9576-a279a1fff30f',
sql: 'select distinct categories.* from categories where categories.id in (?)'
}
{
method: 'select',
options: {},
timeout: false,
cancelOnTimeout: false,
bindings: [ '9' ],
__knexQueryUid: '63172f4a-e230-4162-87a2-b608d981042d',
sql: 'select distinct categories.* from categories where categories.id in (?)'
}
{
method: 'select',
options: {},
timeout: false,
cancelOnTimeout: false,
bindings: [ '12' ],
__knexQueryUid: 'd950d850-09cc-43eb-9b0d-335117447ea7',
sql: 'select distinct categories.* from categories where categories.id in (?)'
}
{
method: 'select',
options: {},
timeout: false,
cancelOnTimeout: false,
bindings: [ '13' ],
__knexQueryUid: '1fdd8a51-4d7f-404c-b512-9bb0cd4bd078',
sql: 'select distinct categories.* from categories where categories.id in (?)'
}
{
method: 'select',
options: {},
timeout: false,
cancelOnTimeout: false,
bindings: [ '14' ],
__knexQueryUid: 'f535b335-4146-4dad-af86-6fba60a9b444',
sql: 'select distinct categories.* from categories where categories.id in (?)'
}
{
method: 'select',
options: {},
timeout: false,
cancelOnTimeout: false,
bindings: [ '10' ],
__knexQueryUid: 'c4ee7022-e95b-4998-b370-76c41f240edd',
sql: 'select distinct categories.* from categories where categories.id in (?)'
}


</p>
</details>

Actually, Let me share all the queries from this database operation. Please this is just going to be a fraction of all the queries because I think I can only scroll in my terminal to a certain limit:

<details>
  <summary>GraphQL query</summary>
<p>

```js
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '2412bc11-8be3-458d-812a-edbd2fe1bd6b',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [
    65, 66, 70, 72, 74, 75, 76, 78,
    80, 81, 83, 86, 67, 71, 73, 77,
    79, 82, 84, 87, 68, 85, 69
  ],
  __knexQueryUid: '93a44984-3c53-47fe-8310-1182b2192d8a',
  sql: 'select `components_opening_hours`.* from `components_opening_hours` where `id` in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [
     1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11,
    12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
    23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
    34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
    45, 46, 47, 48
  ],
  __knexQueryUid: '714b127c-2344-485a-9a1e-2e692b7b0ff6',
  sql: 'select distinct `upload_file`.* from `upload_file` where `upload_file`.`id` in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) order by `created_at` desc'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [
    'cover',       1,  2,
    3,             4,  5,
    6,             7,  8,
    9,             10, 11,
    12,            13, 14,
    15,            16, 17,
    18,            19, 20,
    21,            22, 23,
    24,            25, 26,
    27,            28, 29,
    'restaurants'
  ],
  __knexQueryUid: 'bb9aec32-3b69-4235-b930-645610fae556',
  sql: 'select distinct `upload_file_morph`.* from `upload_file_morph` where `field` = ? and `upload_file_morph`.`related_id` in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) and `upload_file_morph`.`related_type` = ? order by `order` asc'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [
    'opening_hours',
    'components_opening_hours',
    1,
    2,
    3,
    4,
    5,
    6,
    7,
    8,
    9,
    10,
    11,
    12,
    13,
    14,
    15,
    16,
    17,
    18,
    19,
    20,
    21,
    22,
    23,
    24,
    25,
    26,
    27,
    28,
    29
  ],
  __knexQueryUid: 'fb9549fd-cde2-4712-bee8-450fc9754892',
  sql: 'select distinct `restaurants_components`.* from `restaurants_components` where `field` = ? and `component_type` in (?) and `restaurants_components`.`restaurant_id` in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) order by `order` asc'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 1, 1 ],
  __knexQueryUid: '2b498ca3-c977-46cb-b8d3-d1aeff6b610d',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 2, 1 ],
  __knexQueryUid: '797673c6-327b-4768-845f-462727ff989b',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 3, 1 ],
  __knexQueryUid: 'b1e4ff4d-1c7e-459b-8ea7-8fe6c3e1eb52',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 4, 1 ],
  __knexQueryUid: '62ecd2a1-df80-4e1f-a3ec-4bd28badfa7b',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 5, 1 ],
  __knexQueryUid: '67125d46-404a-486f-9ca4-94a4f0040bc5',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 6, 1 ],
  __knexQueryUid: '5956a15a-f651-4e93-b235-26bfe73700ff',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 7, 1 ],
  __knexQueryUid: '59057bb5-7e82-47d2-bb2b-5a6d76a59430',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 8, 1 ],
  __knexQueryUid: '9481bbff-878c-4f17-8495-7da77fb395f3',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 9, 1 ],
  __knexQueryUid: '7d389a56-ba72-4a96-b6c4-a40863242731',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 10, 1 ],
  __knexQueryUid: '548b310d-0575-4732-b5a2-abcfeeefa849',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 11, 1 ],
  __knexQueryUid: '87354ad4-f7a5-498d-b55d-adc1dcb83e74',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 12, 1 ],
  __knexQueryUid: '7c4eb45d-76c6-4565-a864-d35274036793',
  sql: 'select avg(`note`) as `note` from `reviews` where `restaurant` = ? limit ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [
     1,  2,  3,   4,  5,  6,  7,  8,  9, 10, 11, 12,
    13, 14, 15,  16, 17, 18, 19, 20, 21, 22, 23, 24,
    25, 26, 27,  28, 29, 30, 31, 32, 33, 34, 35, 36,
    37, 38, 39,  40, 41, 42, 43, 44, 45, 46, 47, 48,
    49, 50, 51,  52, 53, 54, 55, 56, 57, 58, 59, 60,
    61, 62, 63,  64, 65, 66, 67, 68, 69, 70, 71, 72,
    73, 74, 75,  76, 77, 78, 79, 80, 81, 82, 83, 84,
    85, 86, 87,  88, 89, 90, 91, 92, 93, 94, 95, 96,
    97, 98, 99, 100,
    ... 16 more items
  ],
  __knexQueryUid: '45badb32-9044-4bf2-a77a-e45fd464657a',
  sql: 'select distinct `upload_file`.* from `upload_file` where `upload_file`.`id` in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) order by `created_at` desc'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [
     65,  66,  70,  72,  74,  75,  76,  78,  80,  81,  83,
     86,  88,  89,  92,  94,  98, 101, 104, 105, 109, 113,
    116, 118, 119, 121, 124, 125, 128,  67,  71,  73,  77,
     79,  82,  84,  87,  90,  93,  95,  99, 102, 106, 110,
    114, 115, 120, 122, 126,  68,  85,  91,  96, 100, 103,
    107, 111, 117, 123, 127,  69,  97, 108, 112
  ],
  __knexQueryUid: '8a02fd3d-2606-47b9-93f5-8c9c731581f8',
  sql: 'select `components_opening_hours`.* from `components_opening_hours` where `id` in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '29f1be7b-e0ce-4176-812b-c792657b9c80',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '901a1bf2-115b-4cc5-9a27-08f95a1084da',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '0c8aa798-7538-4c10-9d36-2f40a22633cb',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'd53396a3-0763-400f-8414-ae540a925f29',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '609dca01-5b18-462f-bd41-3a77488ee602',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'a0a7943f-e407-42e2-be60-aa2d0531922a',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'bb237933-01c1-487b-bd84-5a3d56d6756c',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '322f78be-df12-46cc-a75c-199167630fd3',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '38fa8a78-976c-4f08-a56f-bba3449e6f70',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '3bbf708d-3a8a-41f8-a5ac-389d24f0d5b2',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '8125778d-5994-4213-b144-f3a5fab3fc3e',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'af0e8f75-e7c3-4cdb-895d-4e6353732037',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'f528a101-4d79-4362-a62d-95bc54f036c5',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '067a798b-8ba5-46c5-9426-5c35b7eea83b',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '4220bd42-0ead-4ce2-b923-54664906cf30',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'ba36567a-97c0-43d9-b0d0-38de765a1fb4',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '41a5a79f-c622-4192-a1ad-e811f3be9f6f',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'bfa55640-bd47-4a28-9259-5441322e7588',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '210e0837-9921-453b-a55f-6dab525cd94e',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'f715e338-2a1b-441c-a9a1-d22b5b08d0fb',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '78975f52-cf51-46b9-924d-d2316f7d03f0',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '72c2ab9b-4250-4f8a-ab04-26f9259a1958',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'c8b8825f-871e-4e4e-9805-082718f2503c',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'd0d403c7-0d40-406a-aadd-0feaf8305bca',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '0e13d0c0-8ca3-481b-8e18-1381cf4cb65f',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '277125d3-165c-4f90-98f8-3101a0711956',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '6c393c65-adf6-4c7b-8211-7a53d0b6e771',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '125b7b8f-93c7-4e0f-bff7-7e7697b9ab7d',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '39d0cbda-3c02-4f5a-8c18-95528e2522b4',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '3b850097-bfe7-4d45-b9d9-811c99afd623',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'e92368d6-8c47-41b0-9827-584ec81ceda1',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '3819463b-c840-4fda-8ba3-aaed1e056e65',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '5698afc5-ed00-4f9b-bdf8-9cc290a65d48',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '3a841748-b653-4552-8fb3-090536569fdc',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'd97228cd-2f77-4460-aa5b-e9659b70791e',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '5133d2ae-346f-45e3-af62-e4c367fca35d',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '813bb450-6029-45a6-bbb3-140e5c0d8cbe',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '85ae499f-79e6-4c6a-b381-9be62b35377b',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '2c2b8721-331d-49ff-9bba-bf94fc082905',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '102b29c8-37dd-489f-b268-7a93a9fa5c28',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '8fde7628-12ce-47cc-b693-53fae3868815',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '4d6db60f-549c-44d2-9dda-c8b75f230111',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '26914f81-24ad-4a92-92cd-1b40a0770cd2',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '513caaf9-749e-4cb5-b9d0-3e675ba75c2d',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'ffea4d6d-5049-4d48-a1fc-1f488dc02c4a',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'ed37d801-fd1d-45e4-9b45-63768a7a3fd0',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '0f2eed1e-7917-4859-a54c-84763e66fdcf',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'ba916499-3e49-4c65-b2aa-eabfdd3d0bfe',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '7f7814ea-013e-4810-b27e-40ad65c19adb',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '6525462f-4957-4400-a5af-f7aa43f63aeb',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'e2a3465d-43e5-446f-8c7d-37a1b04c7edc',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '0c889c2a-e681-43c8-94d7-fc3604e02feb',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'ee6f0427-bf2f-4140-9ba4-c78344d0fd99',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '03c18040-ce0e-405e-8307-3a0447a7048b',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '334a0855-f171-4bee-a2f1-1b9b37307000',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: 'c276e1c9-d852-446e-bd7f-205aef397a5d',
  sql: 'select distinct `likes`.* from `likes` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '19df4d02-a501-4110-a633-7885ef57ae81',
  sql: 'select distinct `users-permissions_user`.* from `users-permissions_user` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '675cd881-1690-47aa-ad14-855ce1d65bdb',
  sql: 'select distinct `restaurants`.* from `restaurants` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '157a9af9-89d9-4765-8f07-eb0547d5676f',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 0 ],
  __knexQueryUid: '6f2ce094-5819-4186-90be-050b15411b5b',
  sql: 'select distinct `strapi_administrator`.* from `strapi_administrator` where 1 = ?'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '1' ],
  __knexQueryUid: '483c505a-bcb1-4f03-9b1a-97369bf6d3a5',
  sql: 'select distinct `categories`.* from `categories` where `categories`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '6' ],
  __knexQueryUid: '78004bc9-f200-427b-bc65-db490016c467',
  sql: 'select distinct `categories`.* from `categories` where `categories`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '8' ],
  __knexQueryUid: 'bf2bed14-71af-4663-9576-a279a1fff30f',
  sql: 'select distinct `categories`.* from `categories` where `categories`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '9' ],
  __knexQueryUid: '63172f4a-e230-4162-87a2-b608d981042d',
  sql: 'select distinct `categories`.* from `categories` where `categories`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '12' ],
  __knexQueryUid: 'd950d850-09cc-43eb-9b0d-335117447ea7',
  sql: 'select distinct `categories`.* from `categories` where `categories`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '13' ],
  __knexQueryUid: '1fdd8a51-4d7f-404c-b512-9bb0cd4bd078',
  sql: 'select distinct `categories`.* from `categories` where `categories`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '14' ],
  __knexQueryUid: 'f535b335-4146-4dad-af86-6fba60a9b444',
  sql: 'select distinct `categories`.* from `categories` where `categories`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '10' ],
  __knexQueryUid: 'c4ee7022-e95b-4998-b370-76c41f240edd',
  sql: 'select distinct `categories`.* from `categories` where `categories`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '1' ],
  __knexQueryUid: '98410d14-8716-4c63-9779-a6be3b36b66d',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '2' ],
  __knexQueryUid: '99811e9c-8eb1-45de-b4cd-5224c52fcad9',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '3' ],
  __knexQueryUid: 'bd8da4e2-a5f1-45ef-adf2-f72b3a1a9b6f',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '4' ],
  __knexQueryUid: 'fd15a99a-4b1d-4333-9ceb-fa5e4c9661c9',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '5' ],
  __knexQueryUid: '59ab6f1f-987b-4250-b0b8-127f8d9df48f',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '6' ],
  __knexQueryUid: 'a72dd187-a7a6-414d-8d85-9eef46390b26',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '7' ],
  __knexQueryUid: 'f71ae3ca-d10f-4a29-8891-bbf2947baabd',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '8' ],
  __knexQueryUid: 'f436cecf-672c-4366-b43b-2fc6f45b0600',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '9' ],
  __knexQueryUid: 'fad32e0c-a484-4ee6-9ab4-82a4d5e436ed',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '10' ],
  __knexQueryUid: 'f852b6d3-bcbd-46da-ace3-725a92f55d9a',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '11' ],
  __knexQueryUid: 'e01ef6f7-73f1-4e6c-b88b-8c43f2c13149',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ '12' ],
  __knexQueryUid: 'a373630f-151c-46ae-8a01-e0a9fa111db8',
  sql: 'select distinct `reviews`.* from `reviews` left join `main`.`restaurants` as `restaurants_1` on `restaurants_1`.`id` = `reviews`.`restaurant` where `restaurants_1`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 1 ],
  __knexQueryUid: '8c02a128-5b94-4807-9b95-08fef7f03625',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 2 ],
  __knexQueryUid: '5aec981c-7e13-4508-8964-6482499ca735',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 3 ],
  __knexQueryUid: 'e4932c32-1ca0-4d27-bc15-488e6469e425',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 4 ],
  __knexQueryUid: 'a5e2a4d1-cc5c-457d-a106-0864ea3b152d',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 5 ],
  __knexQueryUid: '752310fe-ee55-4f17-b363-9665eae31c20',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 6 ],
  __knexQueryUid: '18ee0569-0d77-44d2-8920-be9ef7bd1860',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 7 ],
  __knexQueryUid: 'a9673a0f-e0a7-4306-8d25-3a266db0abac',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 9 ],
  __knexQueryUid: '5ddf848c-eccd-478f-8981-ec6ef2f2572e',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 10 ],
  __knexQueryUid: 'a7042eb5-0cec-4109-a4af-b138c4b511ae',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 11 ],
  __knexQueryUid: '9f18b66b-bc37-4ace-8b8e-877966ad61c6',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}
{
  method: 'select',
  options: {},
  timeout: false,
  cancelOnTimeout: false,
  bindings: [ 12 ],
  __knexQueryUid: '3953a8b7-e9ea-47c9-954c-070a5fc629bf',
  sql: 'select distinct `restaurants`.* from `restaurants` where `restaurants`.`id` in (?)'
}

Looks like strapi makes a database query for every restaurant fetched from the database.

Also, please notice all the unrelated queries about components, likes, opening hours, avg notes etc.

I would love to find out if there's any way to improve this, or if this is a problem that can't be solved.

Just want to learn more about how this system works.

Thanks !

@lauriejim
Copy link
Contributor

I'm closing this issue, can you please open this question on the Strapi Forum instead.
We will keep issues for bug reports. Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants