Ditto Query Language (DQL) is a powerful, flexible query language designed specifically for use with the Ditto platform. It allows you to perform complex data operations with ease, enabling real-time synchronization and efficient data management.
DQL is designed to simplify data interactions in your applications, providing a consistent and intuitive interface for querying and manipulating data. Whether you’re a developer looking to streamline your backend operations or an engineer focused on optimizing data flow, DQL is tailored to meet your needs.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Ditto","colors":{"primary":"#1E1E1E","light":"#F6F6F6","dark":"#1E1E1E"},"logo":{"light":"https://mintcdn.com/ditto-248bc0d1/u_USsYZWDik2feFj/logo/ditto-dark.svg?fit=max\u0026auto=format\u0026n=u_USsYZWDik2feFj\u0026q=85\u0026s=d835cb30d8f1cdedf44672a712e52ed2","dark":"https://mintcdn.com/ditto-248bc0d1/u_USsYZWDik2feFj/logo/ditto-light.svg?fit=max\u0026auto=format\u0026n=u_USsYZWDik2feFj\u0026q=85\u0026s=485f7a6b8ded70a8b3458ca62383883f"},"favicon":"https://mintcdn.com/ditto-248bc0d1/tCfSF1TTvWS_3XsC/favicon.png?fit=max\u0026auto=format\u0026n=tCfSF1TTvWS_3XsC\u0026q=85\u0026s=06b307a481752b4765930fc23d247612","api":{"playground":{"display":"simple"},"examples":{"languages":["curl"]}},"navbar":{"links":[{"icon":"clipboard-list","href":"/release-notes","label":"Release Notes"},{"href":"https://support.ditto.com","label":"Support"}],"primary":{"type":"button","label":"Start Free","href":"https://portal.ditto.live/create-account?_gl=1*1bow2wn*_ga*NTY3MzI4MDE4LjE3Mjc3NjM2Njg.*_ga_D8PMW3CCL2*MTcyNzc2MzY2Ny4xLjAuMTcyNzc2MzY2Ny42MC4wLjA."}},"footer":{"socials":{"x":"https://www.twitter.com/dittolive","github":"https://github.com/getditto","linkedin":"https://www.linkedin.com/company/dittolive"}},"fonts":{"heading":{"family":"Inter","weight":500},"body":{"family":"Inter"}},"styling":{"eyebrows":"section","latex":false},"integrations":{"gtm":{"tagId":"GTM-WCZQB8FP"}},"banner":{"content":"📣 The Ditto Developer Survey is now live! [Take the survey](https://tally.so/r/Np9ZdN).","dismissible":true},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"ditto-248bc0d1","hasAudioNarration":false,"actualSubdomain":"ditto-248bc0d1","customDomains":["docs.ditto.live"],"gitSource":{"type":"github","owner":"getditto","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae914a05784f4d9cc288e22","collectionId":"2288d55d-4f92-4996-8f23-f1363e6d4be1","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae914a05784f4d9cc288e22"},"feedback":{"thumbs":true,"issues":true,"contextualFeedback":{"allowEmail":true}},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae914a05784f4d9cc288e22","clientVersion":"0.0.4045","searchFilterCounts":[{"language":"default","tag":"Build with the SDK","count":209},{"language":"default","tag":"SDKs","count":77},{"language":"default","tag":"Reference","count":53},{"language":"default","tag":"Overview \u0026 Setup","count":33},{"language":"default","tag":"Query Language (DQL)","count":32},{"language":"default","tag":"Cloud Platform","count":30},{"language":"default","tag":"Deploying your App","count":23},{"language":"default","tag":"Migration Guides","count":20},{"language":"default","tag":"Getting Started","count":17},{"language":"default","tag":"Accessing Data","count":16}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":"@font-face{font-family:'Kairos Sans';src:url(https://cdn.prod.website-files.com/6761335affb7c1ca9aae00dd/676134b94c85d94594f80209_KairosSans_Variable.ttf);font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:'Aeonik Fono';src:url(https://cdn.prod.website-files.com/6761335affb7c1ca9aae00dd/6761352bf250ec43e156773b_AeonikFono-Medium.woff2);font-display:swap;font-weight:400;font-style:normal}#header a,#navbar a,#table-of-contents,.eyebrow,a.card.block h2,button{font-family:'Aeonik Fono';text-transform:uppercase}#header p{font-weight:500}h1{font-family:'Kairos Sans';letter-spacing:normal!important;font-variation-settings:\"wdth\" 112}a.card.block h2{font-weight:400}html[data-current-path^=\"/sdk/v4\"] header a[href=\"/release-notes\"]{display:none}.prose .rn-overview a{border-bottom:0;font-weight:500}.prose .rn-overview a:focus-visible,.prose .rn-overview a:hover,.prose .rn-summary a:focus-visible,.prose .rn-summary a:hover{border-bottom:1px solid rgb(var(--primary))}.prose .rn-summary a{border-bottom:0}"}],"page":{"pagePath":"dql/dql","slug":"/dql/dql","pageMetadata":{"title":"Ditto Query Language Overview","description":"Ditto Query Language (DQL) is a powerful, flexible query language designed specifically for use with the Ditto platform. It allows you to perform complex data operations with ease, enabling real-time synchronization and efficient data management.","sidebarTitle":"Overview","mode":"wide","href":"/dql/dql"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Ditto Query Language (DQL) is a powerful, flexible query language designed specifically for use with the Ditto platform. It allows you to perform complex data operations with ease, enabling real-time synchronization and efficient data management.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,..._provideComponents(),...props.components},{CodeBlock,Heading,Info}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`DQL is designed to simplify data interactions in your applications, providing a consistent and intuitive interface for querying and manipulating data. Whether you’re a developer looking to streamline your backend operations or an engineer focused on optimizing data flow, DQL is tailored to meet your needs.`}),`\n`,_jsx(Heading,{level:`2`,id:`dql-quick-reference`,children:`DQL Quick Reference`}),`\n`,_jsx(Heading,{level:`3`,id:`select`,children:_jsx(_components.a,{href:`/dql/select`,children:`SELECT`})}),`\n`,_jsx(CodeBlock,{filename:`DQL`,numberOfLines:`8`,language:`sql`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`sql`,children:_jsxs(_components.code,{language:`sql`,numberOfLines:`8`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`SELECT`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [DISTINCT] `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`*`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` | field1, field2, ... | aggregate_function(field) [AS alias]`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`FROM`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` your_collection_name`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[WHERE condition]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[GROUP BY groupby_expression_1, groupby_expression_2, ...]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[HAVING condition]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[ORDER BY orderby_expression_1, orderby_expression_2, ... [ASC|DESC]]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[LIMIT limit_value]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[OFFSET number_of_documents_to_skip]`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`insert`,children:_jsx(_components.a,{href:`/dql/insert`,children:`INSERT`})}),`\n`,_jsx(CodeBlock,{filename:`DQL`,numberOfLines:`3`,language:`sql`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`sql`,children:_jsxs(_components.code,{language:`sql`,numberOfLines:`3`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`INSERT INTO`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` your_collection_name`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`DOCUMENTS([document1]),([document2]), ([document3]), ...`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[ON ID CONFLICT [FAIL | DO NOTHING | DO UPDATE]]`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`update`,children:_jsx(_components.a,{href:`/dql/update`,children:`UPDATE`})}),`\n`,_jsx(CodeBlock,{filename:`DQL`,numberOfLines:`4`,language:`sql`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`sql`,children:_jsxs(_components.code,{language:`sql`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`UPDATE`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` your_collection_name`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`SET`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` field1 `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` value1, field2 `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`->`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [mutator], ...`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`WHERE`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [condition]`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`evict`,children:_jsx(_components.a,{href:`/dql/evict`,children:`EVICT`})}),`\n`,_jsx(CodeBlock,{filename:`DQL`,numberOfLines:`2`,language:`sql`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`sql`,children:_jsxs(_components.code,{language:`sql`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`EVICT `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`FROM`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` your_collection_name`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`WHERE`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [condition]`})]}),`\n`]})})}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[`To learn the intricacies of read-and-write operations, see `,_jsx(_components.a,{href:`/dql/insert`,children:`INSERT`}),`, `,_jsx(_components.a,{href:`/dql/select`,children:`SELECT`}),`, `,_jsx(_components.a,{href:`/dql/update`,children:`UPDATE`}),`, and `,_jsx(_components.a,{href:`/dql/delete`,children:`DELETE`}),`.`]})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Ditto Query Language Overview","description":"Ditto Query Language (DQL) is a powerful, flexible query language designed specifically for use with the Ditto platform. It allows you to perform complex data operations with ease, enabling real-time synchronization and efficient data management.","sidebarTitle":"Overview","mode":"wide","href":"/dql/dql"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"DQL Quick Reference","slug":"dql-quick-reference","depth":2,"children":[{"title":"SELECT","slug":"select","depth":3,"children":[]},{"title":"INSERT","slug":"insert","depth":3,"children":[]},{"title":"UPDATE","slug":"update","depth":3,"children":[]},{"title":"EVICT","slug":"evict","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/ditto-248bc0d1/370d4f3cd5a1175c/inkeep.js","/_mintlify/custom/ditto-248bc0d1/c260eb4e17881548/release-notes-filters.js"],"subdomain":"ditto-248bc0d1","siteName":"Ditto","title":"Ditto Query Language Overview - Ditto","relatedPagesConfig":{"enabled":true,"limit":3,"mode":"automatic"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-01-28T19:08:00.460Z","originalFileLocation":"dql/dql.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Ditto Query Language (DQL) is a powerful, flexible query language designed specifically for use with the Ditto platform. It allows you to perform complex data operations with ease, enabling real-time synchronization and efficient data management.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Ditto\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ditto-248bc0d1/9AZ87A7qeePs6thb/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/ditto-248bc0d1/9AZ87A7qeePs6thb/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ditto-248bc0d1/9AZ87A7qeePs6thb/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ditto-248bc0d1/9AZ87A7qeePs6thb/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ditto-248bc0d1/9AZ87A7qeePs6thb/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ditto-248bc0d1/9AZ87A7qeePs6thb/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ditto-248bc0d1/9AZ87A7qeePs6thb/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ditto-248bc0d1/9AZ87A7qeePs6thb/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ditto-248bc0d1/9AZ87A7qeePs6thb/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Ditto Query Language Overview - Ditto\">\u003cmeta data-mint-head property=\"og:description\" content=\"Ditto Query Language (DQL) is a powerful, flexible query language designed specifically for use with the Ditto platform. It allows you to perform complex data operations with ease, enabling real-time synchronization and efficient data management.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Ditto\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.ditto.live/dql/dql\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://ditto-248bc0d1.mintlify.app/_mintlify/api/og/v2?division=Statements\u0026amp;title=Ditto+Query+Language+Overview\u0026amp;description=Ditto+Query+Language+%28DQL%29+is+a+powerful%2C+flexible+query+language+designed+specifically+for+use+with+the+Ditto+platform.+It+allows+you+to+perform+complex+data+o\u0026amp;theme=f28dd55020e1158de447bdec\u0026amp;signature=44451f9dea73dbfe5569e1c6dfa8f1fa75203a9bca1a57d70dd57d12652bfea4\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Ditto Query Language Overview - Ditto\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Ditto Query Language (DQL) is a powerful, flexible query language designed specifically for use with the Ditto platform. It allows you to perform complex data operations with ease, enabling real-time synchronization and efficient data management.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://ditto-248bc0d1.mintlify.app/_mintlify/api/og/v2?division=Statements\u0026amp;title=Ditto+Query+Language+Overview\u0026amp;description=Ditto+Query+Language+%28DQL%29+is+a+powerful%2C+flexible+query+language+designed+specifically+for+use+with+the+Ditto+platform.+It+allows+you+to+perform+complex+data+o\u0026amp;theme=f28dd55020e1158de447bdec\u0026amp;signature=44451f9dea73dbfe5569e1c6dfa8f1fa75203a9bca1a57d70dd57d12652bfea4\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/ditto-248bc0d1/9AZ87A7qeePs6thb/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Ditto\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1E1E1E\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.ditto.live/dql/dql\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/dql/dql.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.ditto.live/#organization\",\"name\":\"Ditto\",\"url\":\"https://docs.ditto.live\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/ditto-248bc0d1/u_USsYZWDik2feFj/logo/ditto-dark.svg?fit=max\u0026auto=format\u0026n=u_USsYZWDik2feFj\u0026q=85\u0026s=d835cb30d8f1cdedf44672a712e52ed2\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.ditto.live#website\",\"name\":\"Ditto\",\"url\":\"https://docs.ditto.live\",\"publisher\":{\"@id\":\"https://docs.ditto.live/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.ditto.live/dql/dql#webpage\",\"url\":\"https://docs.ditto.live/dql/dql\",\"name\":\"Ditto Query Language Overview\",\"description\":\"Ditto Query Language (DQL) is a powerful, flexible query language designed specifically for use with the Ditto platform. It allows you to perform complex data operations with ease, enabling real-time synchronization and efficient data management.\",\"dateModified\":\"2026-01-28T19:08:00.460Z\",\"isPartOf\":{\"@id\":\"https://docs.ditto.live#website\"},\"breadcrumb\":{\"@id\":\"https://docs.ditto.live/dql/dql#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.ditto.live/dql/dql#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Ditto\",\"item\":\"https://docs.ditto.live\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ditto Query Language Overview\",\"item\":\"https://docs.ditto.live/dql/dql\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.ditto.live/dql/dql#article\",\"headline\":\"Ditto Query Language Overview\",\"name\":\"Ditto Query Language Overview\",\"description\":\"Ditto Query Language (DQL) is a powerful, flexible query language designed specifically for use with the Ditto platform. It allows you to perform complex data operations with ease, enabling real-time synchronization and efficient data management.\",\"url\":\"https://docs.ditto.live/dql/dql\",\"mainEntityOfPage\":{\"@id\":\"https://docs.ditto.live/dql/dql#webpage\"},\"dateModified\":\"2026-01-28T19:08:00.460Z\",\"publisher\":{\"@id\":\"https://docs.ditto.live/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.ditto.live#website\"}}]}\u003c/script>","siteName":"Ditto","nav":{"global":null,"tabs":[{"tab":"Getting Started","pages":[{"title":"Getting Started","href":"/home/introduction"}]},{"tab":"Build with the SDK","icon":{"style":"solid","name":"laptop-mobile"},"versions":[{"version":"v5","groups":[{"group":"Overview \u0026 Setup","pages":[{"title":"SDK v5 Homepage","sidebarTitle":"SDK Home","icon":"house","iconType":"solid","mode":"wide","href":"/sdk/latest/home"},{"title":"What's New in Ditto SDK v5","sidebarTitle":"What's New in v5","icon":"rocket","iconType":"solid","href":"/sdk/latest/v5-whats-new"},{"title":"Quickstart Task Apps - Overview","sidebarTitle":"Quickstart","icon":"rabbit","iconType":"solid","mode":"wide","href":"/sdk/latest/quickstarts/quickstarts-landing"},{"title":"Migration Guide for Atlas Device Sync","icon":"arrow-right-arrow-left","iconType":"solid","href":"/sdk/latest/quickstarts/mongodb-migrationguide"}]},{"group":"SDKs","pages":[{"group":"Swift","icon":{"style":"brands","name":"apple"},"pages":[{"title":"Swift Quickstart","sidebarTitle":"Quickstart","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/swift"},{"title":"Swift","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/swift"},{"title":"Swift Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/swift"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/swift"},{"group":"Migration Guides","icon":{"style":"solid","name":"arrow-up-big-small"},"pages":[{"title":"Swift V4→V5 API Migration Guide","sidebarTitle":"V4→V5 Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/swift-v4"},{"title":"Swift Legacy→DQL Migration Guide","sidebarTitle":"DQL Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/swift-dql"}]},{"title":"Swift","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://software.ditto.live/swift/DittoSwift/5.2.0/api-reference/documentation/dittoswift/","href":"/sdk/latest/api-reference/swift"}]},{"group":"Kotlin","icon":{"style":"brands","name":"android"},"pages":[{"title":"Kotlin for Android Quickstart","sidebarTitle":"Quickstart","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/kotlin-android"},{"title":"Kotlin Install Guide","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/kotlin"},{"title":"Kotlin Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/kotlin"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/kotlin"},{"group":"Migration Guides","icon":{"style":"solid","name":"arrow-up-big-small"},"pages":[{"title":"Kotlin V4→V5 API Migration Guide","sidebarTitle":"V4→V5 Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/kotlin-v4"},{"title":"Kotlin Legacy→DQL Migration Guide","sidebarTitle":"DQL Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/kotlin-dql"}]},{"group":"Resources","icon":{"style":"solid","name":"box-archive"},"pages":[{"title":"Optimizing Bundle Sizes for Android","href":"/best-practices/optimizing-bundle-sizes-for-android"}]},{"title":"Android","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://software.ditto.live/kotlin/ditto-kotlin/5.2.0/api-reference/","href":"/sdk/latest/api-reference/kotlin"}]},{"group":"Flutter","icon":{"style":"brands","name":"flutter"},"pages":[{"title":"Flutter Quickstart","sidebarTitle":"Quickstart","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/flutter"},{"title":"Flutter Install Guide","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/flutter"},{"title":"Flutter Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/flutter"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/flutter"},{"group":"Migration Guides","icon":{"style":"solid","name":"arrow-up-big-small"},"pages":[{"title":"Flutter V4→V5 API Migration Guide","sidebarTitle":"V4→V5 Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/flutter-v4"},{"title":"Flutter Legacy→DQL Migration Guide","sidebarTitle":"DQL Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/flutter-dql"}]},{"title":"Flutter","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://pub.dev/documentation/ditto_live/latest/ditto_live/","href":"/sdk/latest/api-reference/flutter"}]},{"group":"React Native","icon":{"style":"brands","name":"react"},"pages":[{"title":"React Native Quickstart","sidebarTitle":"Quickstart","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/react-native"},{"title":"React Native","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/react-native"},{"title":"React Native Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/react-native"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/react-native"},{"group":"Migration Guides","icon":{"style":"solid","name":"arrow-up-big-small"},"pages":[{"title":"React Native V4→V5 API Migration Guide","sidebarTitle":"V4→V5 Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/react-native-v4"},{"title":"React Native Legacy→DQL Migration Guide","sidebarTitle":"DQL Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/react-native-dql"}]},{"title":"JavaScript","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://software.ditto.live/js/Ditto/5.2.0/api-reference/","href":"/sdk/latest/api-reference/js"}]},{"group":"JavaScript Web","icon":{"style":"brands","name":"js"},"pages":[{"title":"JavaScript Web Quickstart","sidebarTitle":"Quickstart","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/javascript-web"},{"title":"JavaScript","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/js"},{"title":"JavaScript Web Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/js-web"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/javascript-web"},{"group":"Migration Guides","icon":{"style":"solid","name":"arrow-up-big-small"},"pages":[{"title":"JavaScript Web V4→V5 API Migration Guide","sidebarTitle":"V4→V5 Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/web-js-v4"},{"title":"JavaScript Web Legacy→DQL Migration Guide","sidebarTitle":"DQL Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/web-js-dql"}]},{"title":"JavaScript","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://software.ditto.live/js/Ditto/5.2.0/api-reference/","href":"/sdk/latest/api-reference/js"}]},{"group":"JavaScript Node.js","icon":{"style":"brands","name":"js"},"pages":[{"title":"JavaScript Console App Quickstart","sidebarTitle":"Quickstart","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/javascript-console"},{"title":"JavaScript","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/js"},{"title":"Node.js \u0026 Electron Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/nodejs"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/javascript-nodejs"},{"group":"Migration Guides","icon":{"style":"solid","name":"arrow-up-big-small"},"pages":[{"title":"Node.js V4→V5 API Migration Guide","sidebarTitle":"V4→V5 Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/node-js-v4"},{"title":"Node.js Legacy→DQL Migration Guide","sidebarTitle":"DQL Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/node-js-dql"}]},{"title":"JavaScript","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://software.ditto.live/js/Ditto/5.2.0/api-reference/","href":"/sdk/latest/api-reference/js"}]},{"group":"Java Server","icon":{"style":"brands","name":"java"},"pages":[{"title":"Java Server Quickstart","sidebarTitle":"Quickstart (Server)","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/java-server"},{"title":"Java for Servers \u0026 Desktop","sidebarTitle":"Install Guide (Server)","icon":"download","iconType":"solid","href":"/sdk/latest/install-guides/java/server"},{"title":"Java Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/java"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/java"},{"group":"Migration Guides","icon":{"style":"solid","name":"arrow-up-big-small"},"pages":[{"title":"Java V4→V5 API Migration Guide","sidebarTitle":"V4→V5 Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/java-v4"},{"title":"Java Legacy→DQL Migration Guide","sidebarTitle":"DQL Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/java-dql"}]},{"title":"Java Server","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"http://software.ditto.live/java/ditto-java/5.2.0/api-reference/","href":"/sdk/latest/api-reference/java"}]},{"group":"C# - .NET","icon":{"style":"brands","name":"microsoft"},"pages":[{"title":".NET (C#) Console App Quickstart","sidebarTitle":"Quickstart (Console)","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/dotnet-console"},{"title":".NET (C#) MAUI Quickstart","sidebarTitle":"Quickstart (Maui)","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/dotnet-maui"},{"title":"C#","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/c-sharp"},{"title":"C# Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/c-sharp"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/c-sharp"},{"group":"Migration Guides","icon":{"style":"solid","name":"arrow-up-big-small"},"pages":[{"title":"C# V4→V5 API Migration Guide","sidebarTitle":"V4→V5 Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/c-sharp-v4"},{"title":"C# Legacy→DQL Migration Guide","sidebarTitle":"DQL Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/c-sharp-dql"}]},{"title":"C#","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://software.ditto.live/dotnet/Ditto/5.2.0/api-reference/","href":"/sdk/latest/api-reference/c-sharp"}]},{"group":"C++","icon":{"style":"solid","name":"code"},"pages":[{"title":"C++ Console App Quickstart","sidebarTitle":"Quickstart (Console)","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/cpp-console"},{"title":"C++","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/cpp"},{"title":"C++ Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/cpp"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/cpp"},{"group":"Migration Guides","icon":{"style":"solid","name":"arrow-up-big-small"},"pages":[{"title":"C++ V4→V5 API Migration Guide","sidebarTitle":"V4→V5 Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/cpp-v4"},{"title":"C++ Legacy→DQL Migration Guide","sidebarTitle":"DQL Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/cpp-dql"}]},{"title":"C++","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://software.ditto.live/cpp/Ditto/5.2.0/api-reference/","href":"/sdk/latest/api-reference/cpp"}]},{"group":"Rust","icon":{"style":"brands","name":"rust"},"pages":[{"title":"Rust Console App Quickstart","sidebarTitle":"Quickstart","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/rust-console"},{"title":"Rust","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/rust"},{"title":"Rust Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/rust"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/rust"},{"group":"Migration Guides","icon":{"style":"solid","name":"arrow-up-big-small"},"pages":[{"title":"Rust V4→V5 API Migration Guide","sidebarTitle":"V4→V5 Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/rust-v4"},{"title":"Rust Legacy→DQL Migration Guide","sidebarTitle":"DQL Migration Guide","icon":"arrow-up-big-small","iconType":"solid","href":"/sdk/latest/migration-guides/rust-dql"}]},{"title":"Rust","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://software.ditto.live/rust/Ditto/5.2.0/x86_64-unknown-linux-gnu/docs/dittolive_ditto/index.html","href":"/sdk/latest/api-reference/rust"}]},{"group":"Python (Preview)","icon":{"style":"brands","name":"python"},"pages":[{"title":"Python Console App Quickstart","sidebarTitle":"Quickstart","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/python"},{"title":"Python - Public Preview","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/python"},{"title":"Python Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/python"},{"title":"Python","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://software.ditto.live/python/dittolive-ditto/5.2.0.dev0/api-reference/ditto.html","href":"/sdk/latest/api-reference/python"}]},{"group":"Go (Preview)","icon":{"style":"brands","name":"golang"},"pages":[{"title":"Go Console App Quickstart","sidebarTitle":"Quickstart","icon":"rabbit-running","iconType":"solid","href":"/sdk/latest/quickstarts/go"},{"title":"Go - Public Preview","sidebarTitle":"Install Guide","icon":"book","iconType":"solid","href":"/sdk/latest/install-guides/go"},{"title":"Go Compatibility","sidebarTitle":"Compatibility","icon":"puzzle","iconType":"solid","href":"/sdk/latest/compatibility/go"},{"title":"Release Notes","sidebarTitle":"Release Notes","icon":"clipboard-list","iconType":"solid","mode":"wide","href":"/sdk/latest/release-notes-hub/go"},{"title":"Go","sidebarTitle":"API Docs","icon":"code","iconType":"solid","url":"https://software.ditto.live/go/Ditto/5.0.0-go-preview.3/docs/github.com/getditto/ditto-go-sdk/v5/ditto/index.html","href":"/sdk/latest/api-reference/go"}]}]},{"group":"Accessing Data","pages":[{"title":"Creating Documents","icon":"file-plus","href":"/sdk/latest/crud/create"},{"title":"Reading Documents","icon":"book-open-reader","href":"/sdk/latest/crud/read"},{"title":"Updating Documents","icon":"pen-to-square","href":"/sdk/latest/crud/update"},{"title":"Removing Documents","icon":"trash-can","href":"/sdk/latest/crud/delete"},{"title":"Reacting to Data Changes","icon":"eye","href":"/sdk/latest/crud/observing-data-changes"},{"title":"Large Binary Files","icon":"link","href":"/sdk/latest/crud/working-with-attachments"},{"title":"Working with EJSON","icon":"brackets-curly","iconType":"solid","href":"/sdk/latest/crud/working-with-ejson"},{"title":"Transactions","icon":"database","href":"/sdk/latest/crud/transactions"}]},{"group":"Syncing Data","icon":{"style":"solid","name":"rotate"},"pages":[{"title":"Managing Subscriptions","icon":"rotate","href":"/sdk/latest/sync/syncing-data"},{"title":"Sync Handling","icon":"rotate","iconType":"solid","href":"/best-practices/sync-handling"},{"group":"Monitoring Sync Status","icon":{"name":"file-check"},"pages":[{"title":"Tracking Local Commits","icon":"code-commit","href":"/sdk/latest/sync/tracking-local-commits"},{"title":"Tracking Cloud Sync Status","sidebarTitle":"Tracking Cloud Sync","icon":"cloud-check","href":"/sdk/latest/sync/cloud-sync-status"},{"title":"System Sync Collection Reference","sidebarTitle":"System Sync Collection","icon":"folder-gear","href":"/sdk/latest/sync/monitoring-sync-status"}]},{"title":"Configuring Collection Sync","sidebarTitle":"Configuring Collection Sync","icon":"telescope","href":"/sdk/latest/sync/sync-scopes"},{"title":"Device Storage Management","icon":"database","href":"/sdk/latest/sync/device-storage-management"},{"title":"Encryption at Rest","icon":"lock","href":"/sdk/latest/sync/encryption-at-rest"},{"title":"Data Streams","icon":"arrow-right-arrow-left","tag":"Preview","href":"/sdk/latest/sync/data-streams"}]},{"group":"Authentication and Authorization","pages":[{"title":"Authentication Providers","icon":"cloud","href":"/sdk/latest/auth-and-authorization/cloud-authentication"},{"title":"Authorizing Users","icon":"users","href":"/sdk/latest/auth-and-authorization/data-authorization"},{"title":"Certificate-Based Security","icon":"certificate","iconType":"solid","href":"/sdk/latest/auth-and-authorization/certificate-based-security"}]},{"group":"Managing the Mesh","pages":[{"title":"Using Mesh Presence","icon":"circle-nodes","href":"/sdk/latest/sync/using-mesh-presence"},{"title":"Customizing Transports","icon":"wrench","href":"/sdk/latest/sync/customizing-transport-configurations"},{"title":"Limiting Connections","icon":"scissors","href":"/sdk/latest/sync/handling-connection-requests"}]},{"group":"Deploying your App","pages":[{"group":"Configuring Hardware","icon":{"name":"network-wired"},"pages":[{"title":"Redundant Bluetooth","icon":"bluetooth","href":"/sdk/latest/sync/managing-redundant-bluetooth-le-connections"},{"title":"Bluetooth on Linux","icon":"linux","href":"/sdk/latest/deployment/bluetooth-on-linux"},{"title":"Local Area Network","icon":"wifi","href":"/sdk/latest/deployment/network-deployment"},{"title":"Optimizing Ditto Wi-Fi Aware for Your Android Hardware","sidebarTitle":"Android Wi-Fi Chipset Considerations","icon":"wifi","href":"/sdk/latest/deployment/wifi-aware-chipset-considerations"}]},{"title":"Testing","icon":"vial","href":"/sdk/latest/deployment/testing"},{"title":"Developer Tools","icon":"code","href":"/sdk/latest/deployment/integrate-ditto-tools-for-kotlin-swift-and-c-net-in-15-minutes"},{"title":"Remote Observability","icon":"eye","href":"/sdk/latest/deployment/device-observability-and-ditto-logs"},{"title":"Getting System Information","icon":"circle-info","href":"/sdk/latest/deployment/getting-system-information"},{"title":"Capturing Support Bundles","icon":"box-archive","href":"/sdk/latest/deployment/support-bundles"},{"title":"SDK Logging","icon":"file-invoice","href":"/sdk/latest/deployment/logging"},{"title":"Optimizing Server Performance","icon":"server","href":"/sdk/latest/deployment/setting-routing-hints"},{"title":"Troubleshooting Guide","icon":"wrench","iconType":"solid","href":"/sdk/latest/deployment/troubleshooting"}]}]},{"version":"v4","pages":[{"title":"v4","href":"/sdk/v4/home"}]}]},{"tab":"Query Language (DQL)","icon":{"style":"regular","name":"file-magnifying-glass"},"groups":[{"group":"Statements","pages":[{"title":"Ditto Query Language Overview","sidebarTitle":"Overview","mode":"wide","href":"/dql/dql"},{"title":"SELECT","description":"The `SELECT` operation, once executed, retrieves documents from a collection and uses clauses like `WHERE` to specify conditions for filtering the documents to return.","href":"/dql/select"},{"title":"INSERT","href":"/dql/insert"},{"title":"UPDATE","href":"/dql/update"},{"title":"DELETE","href":"/dql/delete"},{"title":"EVICT","href":"/dql/evict"},{"title":"RETURNING","href":"/dql/returning"},{"title":"INDEX","href":"/dql/indexing"},{"title":"EXPLAIN","href":"/dql/explain"},{"title":"PROFILE","href":"/dql/profile"},{"title":"ADVISE","href":"/dql/advise"},{"title":"SHOW","href":"/dql/show"},{"title":"ALTER SYSTEM","href":"/dql/alter-system"}]},{"group":"Types and Functions","pages":[{"title":"Types and Definitions","href":"/dql/types-and-definitions"},{"title":"IDs, Paths, Strings, and Keywords","icon":"font","href":"/dql/ids-paths-strings-keywords"},{"title":"Operator expressions","href":"/dql/operator-expressions"},{"title":"Timestamps","href":"/best-practices/timestamps"}]},{"group":"Reference","pages":[{"title":"Query Directives","sidebarTitle":"Directives","href":"/dql/directives"},{"title":"Access paths","href":"/dql/access-paths"},{"title":"Virtual Collections","href":"/dql/virtual-collections"},{"title":"MongoDB Aggregation Pipeline to DQL","href":"/dql/mongodb-aggregation-comparison"},{"title":"Schema Versioning","icon":"code-branch","href":"/best-practices/schema-versioning"},{"title":"Data Modeling Tips","sidebarTitle":"Data Modeling Tips","href":"/best-practices/data-modeling"},{"title":"Document Size Limits","sidebarTitle":"Document Size Limits","href":"/best-practices/document-size-limits"},{"title":"Conflict Resolution Patterns","icon":"code-merge","href":"/best-practices/conflict-resolution-patterns"},{"title":"Strict Mode","href":"/dql/strict-mode"},{"title":"Customizing System Settings","href":"/sdk/latest/sync/using-alter-system"},{"group":"Legacy Query Language","pages":[{"title":"Query Syntax (Legacy)","href":"/dql/query-syntax-legacy"},{"title":"Documents and IDs (Legacy)","href":"/dql/documents-ids-legacy"},{"title":"Legacy-to-DQL Reference","href":"/dql/legacy-to-dql-refs"},{"title":"Legacy-to-DQL Adoption Guide","href":"/dql/legacy-to-dql-adoption"},{"title":"Replacing Live Query Events with Store Observers","href":"/dql/replacing-live-queries"}]}]}]},{"tab":"Cloud Platform","icon":{"style":"regular","name":"cloud"},"pages":[{"title":"Cloud Platform","href":"/cloud/overview"}]},{"tab":"Ditto Server","hidden":true,"pages":[{"title":"Ditto Server","href":"/ditto-server/operator/operator-quickstart"}]},{"tab":"Ditto Edge Server","hidden":true,"pages":[{"title":"Ditto Edge Server","href":"/edge-server/overview"}]}]},"basePath":"","title":"Ditto Query Language Overview - Ditto","buildId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","deploymentId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","dynamics":["10e4515597"],"chunks":["BannerMarkdown-DHaG7hr_.js","dist-DKZWslLH.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-BIWXJmsZ.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js"]}