(window.webpackJsonp=window.webpackJsonp||[]).push([[21],{mRV3:function(e,t,n){"use strict";n.r(t),n.d(t,"_frontmatter",(function(){return c})),n.d(t,"default",(function(){return p}));var o=n("wx14"),s=n("zLVn"),a=(n("q1tI"),n("7ljp")),r=n("hhGP"),c=(n("qKvR"),{});void 0!==c&&c&&c===Object(c)&&Object.isExtensible(c)&&!c.hasOwnProperty("__filemeta")&&Object.defineProperty(c,"__filemeta",{configurable:!0,value:{name:"_frontmatter",filename:"src/pages/docs/Connecting to Databases/google-sheets.mdx"}});var i={_frontmatter:c},b=r.a;function p(e){var t=e.components,n=Object(s.a)(e,["components"]);return Object(a.b)(b,Object(o.a)({},i,n,{components:t,mdxType:"MDXLayout"}),Object(a.b)("h2",{id:"google-sheets"},"Google Sheets"),Object(a.b)("p",null,"Google Sheets has a very limited\n",Object(a.b)("a",{href:"https://developers.google.com/chart/interactive/docs/querylanguage",parentName:"p"},"SQL API"),". The recommended\nconnector library for Google Sheets is ",Object(a.b)("a",{href:"https://github.com/betodealmeida/gsheets-db-api",parentName:"p"},"gsheetsdb"),"."),Object(a.b)("p",null,"There are a few steps involved in connecting Superset to Google Sheets. This\n",Object(a.b)("a",{href:"https://preset.io/blog/2020-06-01-connect-superset-google-sheets/",parentName:"p"},"tutorial")," has the most upto date\ninstructions on setting up this connection."))}void 0!==p&&p&&p===Object(p)&&Object.isExtensible(p)&&!p.hasOwnProperty("__filemeta")&&Object.defineProperty(p,"__filemeta",{configurable:!0,value:{name:"MDXContent",filename:"src/pages/docs/Connecting to Databases/google-sheets.mdx"}}),p.isMDXComponent=!0}}]);
//# sourceMappingURL=component---src-pages-docs-connecting-to-databases-google-sheets-mdx-bc2c5e46551b080dc952.js.map