Sq.io: jq for databases and much more
sq is an open-source data wrangling tool that facilitates data inspection, querying, and manipulation across various databases and file formats, featuring a user-friendly command structure and comprehensive documentation.
Read original articlesq is an open-source data wrangling tool designed to facilitate data inspection, querying, joining, importing, and exporting. It operates similarly to jq but is tailored for databases and documents. Users can execute simple commands to interact with various data sources, including SQL databases like Postgres, SQLite, MySQL, and SQL Server, as well as file formats such as Excel, CSV, and JSON. Key features include the ability to compare database tables, import Excel worksheets into Postgres, view database metadata in JSON format, and execute SQL queries across different database systems. The tool also supports exporting database tables to CSV and offers a range of commands for managing data sources and database tables. Installation is straightforward, with options available for macOS, Linux, and Windows. The tool's query language, SLQ, is designed for ease of use, allowing users to perform complex data manipulations with minimal effort. Comprehensive documentation, including a query guide and tutorials, is available to assist users in maximizing the tool's capabilities.
- sq is a free and open-source data wrangling tool.
- It supports various databases and file formats for data manipulation.
- Users can execute SQL queries and import/export data easily.
- The tool features a simple command structure for managing data sources.
- Comprehensive documentation is available for user guidance.
Related
Show HN: Qq: like jq, but can transcode between many formats
The GitHub repository hosts `qq`, a tool using `jq` query syntax and `gojq` for configuration format transcoding. It offers interactive query building, multiple format support, and encoding performance focus. Installation options include source or releases. Contributions welcome.
Show HN: Anyquery – A SQL query engine for anything (CSV, GitHub, Airtable,etc.)
Anyquery is a command-line tool for executing SQL queries across various data sources, supporting multiple operating systems and formats, with features for data integration and open-source licensing under AGPL v3.
Show HN: JAQT – JavaScript Queries and Transformations
jaqt is a JavaScript query engine that simplifies data querying and manipulation of arrays and objects, enhancing native functions with intuitive syntax. It encourages contributions and is licensed under MIT.
Show HN: Sequel – Effortlessly understand your data
Sequel is an AI tool that enables natural language queries for databases like PostgreSQL and MySQL, enhancing data accessibility for users while prioritizing security and offering SQL editing options.
Goodbye API. Hello RSQL
rSQL simplifies data access by enabling direct SQL usage, offering features like fine-grained authorization and version control. Currently in beta, it will introduce pricing plans for businesses.
- Some users question the necessity of sq, suggesting that learning SQL might be more efficient than using additional tools.
- There are requests for features that allow SQL-like querying of JSON data, indicating a desire for interoperability between different data formats.
- Several comments highlight the complexity of jq's query language, with users expressing difficulty in maintaining jq scripts.
- Users appreciate the utility of sq for simple operations but note that it may lack features compared to established tools like DuckDB.
- There is a general interest in exploring new tools for data manipulation, with some users expressing excitement about the potential of sq.
Duckdb supports both Postgres, Mysql, SQLite and many other extensions.
Postgres: https://duckdb.org/docs/extensions/postgres
MySQL: https://duckdb.org/docs/extensions/mysql
SQLite: https://duckdb.org/docs/extensions/sqlite
You can try this yourself.
1. Clone this repo and create a postgres container with sample data: https://github.com/TemaDobryyR/simple-postgres-container
2. Install duckdb if you haven't and if you have just access it on the console: https://duckdb.org/docs/installation/index?version=stable&en...
3. Load the postgres extension: INSTALL postgres;LOAD postgres;
4. Connect to the postgres database: ATTACH 'dbname=postgres user=postgres host=127.0.0.1 password=postgres' AS db (TYPE POSTGRES, READ_ONLY);
5. SHOW ALL TABLES;
6. select * from db.public.transactions limit 10;
Trying to access SQL data without using SQL only gets you so far and you can just use basic sql interface for that.
Looks like an absolutely great (and necessary!) utility, which will automate many future workflows and dataflows, save countless hours of time collectively for many people en masse, and therefore change the world (allow more people to get more done in less time!) much like Unix, shell scripting, grep, sed, awk and Perl gave the world...
Congratulations on writing what no doubt will become one of the major Unix/Windows/MacOS/Other OS/Linux shell scripting commands in the future, if it isn't already!
Well done!
As a person who is apart from the tech scene, and lurks in the tech space out of interest, I appreciate this guidance. For the longest time I didn’t know nginx was pronounced Engine-X; I called it N-jinx.
Looks kinda neat for when I don't want or need anything more than bash for a script.
Trying to understand: Is the main purpose of this to use jq-syntax for cataloging-like functionality and/or cross-query? I mean it's quite a few lines of code, but you inspect the database catalogs and offer a layer on top of that? I mean, how much data is actually leaving the database?
[0] https://github.com/Florents-Tselai/liteJQ [1] https://github.com/Florents-Tselai/pgJQ
Another POV is all the developers I know who thrive the most and have found the most success: they rate aesthetic concerns the lowest when looking at their tools. That is to say that the packaging or aesthetic coherence in some broader philosophy matters less than other factors.
Related
Show HN: Qq: like jq, but can transcode between many formats
The GitHub repository hosts `qq`, a tool using `jq` query syntax and `gojq` for configuration format transcoding. It offers interactive query building, multiple format support, and encoding performance focus. Installation options include source or releases. Contributions welcome.
Show HN: Anyquery – A SQL query engine for anything (CSV, GitHub, Airtable,etc.)
Anyquery is a command-line tool for executing SQL queries across various data sources, supporting multiple operating systems and formats, with features for data integration and open-source licensing under AGPL v3.
Show HN: JAQT – JavaScript Queries and Transformations
jaqt is a JavaScript query engine that simplifies data querying and manipulation of arrays and objects, enhancing native functions with intuitive syntax. It encourages contributions and is licensed under MIT.
Show HN: Sequel – Effortlessly understand your data
Sequel is an AI tool that enables natural language queries for databases like PostgreSQL and MySQL, enhancing data accessibility for users while prioritizing security and offering SQL editing options.
Goodbye API. Hello RSQL
rSQL simplifies data access by enabling direct SQL usage, offering features like fine-grained authorization and version control. Currently in beta, it will introduce pricing plans for businesses.