snowflake query builder for python.
Project description
snowq
Easily build and execute Snowflake queries in Python.
CLI Tool
New snowq Config
snowq new
Generate Python Model from Snowflake information schema
snowq model import
Query Builder
Insert Query
import textwrap
from snowq.query import insert
from your.database.schema import User
query, params = (
insert.into(
User,
).values(
{
"id": 1,
"name": "John Doe",
}
)
).build()
expected = textwrap.dedent(
"""
INSERT INTO
database.schema.users
VALUES (
%(id)s,
%(name)s
)
"""
).strip()
assert query == expected
Update Query
import textwrap
from snowq.query import update
from your.database.schema import User
query, params = (
update(
User,
)
.set(
{"name": "Jane Doe"},
)
.where(
"id = 1",
)
).build()
expected = textwrap.dedent(
"""
UPDATE
database.schema.users
SET
name = %(name)s
WHERE
id = 1
"""
).strip()
assert query == expected
Delete Query
import textwrap
from snowq.query import delete
from your.database.schema import User
query, params = (
delete.from_(
User,
).where(
"id = 1",
)
).build()
expected = textwrap.dedent(
"""
DELETE FROM
database.schema.users
WHERE
id = 1
"""
).strip()
assert query == expected
Truncate Query
from snowq.query import truncate
from your.database.schema import User
query, params = truncate.table(User).build()
expected = "TRUNCATE TABLE database.schema.users"
assert query == expected
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
snowq-0.0.1.tar.gz
(30.0 kB
view hashes)
Built Distributions
Close
Hashes for snowq-0.0.1-py3-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 789d4d66791a9352cbecef1411202f6a6977bd64121671c137a573f309b821e6 |
|
MD5 | a49cb8c7c6e83b330c861e0c5ec3c6eb |
|
BLAKE2b-256 | 459c847093b510b452a78cf93fa423612eb991e609bfe7ac0142087f11f098c0 |
Close
Hashes for snowq-0.0.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0a4bab70948f683dcfcd85793867b295635b430be09a2d56f4198f38bc0d607c |
|
MD5 | 2e9f3d42cb64e551f6fb8b4c2dbfcda0 |
|
BLAKE2b-256 | be4b3f469ccc5f20e28113060c05830af99357451b224cc7fdbd09582695eded |
Close
Hashes for snowq-0.0.1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d3d877f03fef1ed2b1978114a7f09dd31225841ebce10edd10a0702cfd0780ff |
|
MD5 | 9a48c79259798324ce9a530a68664de7 |
|
BLAKE2b-256 | e16007e5cf41d174d829b59214afdde64a1cd9a2fb1b89a8e6f9ee9bda27ee15 |
Close
Hashes for snowq-0.0.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a71e417379d1548eb40e1f2ab4b67ba9301044b3c866ac1fa59cdd40fe3b1ee |
|
MD5 | bb36d8f2a84dca16d39ee6a17fe0f237 |
|
BLAKE2b-256 | aec7733e7ebdd000fa150ade57f2da06e2aec2e8ef5b863d99bd6753d7edb766 |
Close
Hashes for snowq-0.0.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f22965cf7fa6b08f2a051106b29c85f264fe7f32015eac40a62c3b6016837906 |
|
MD5 | 71a0053957066b1b822d7d618754b5f1 |
|
BLAKE2b-256 | b0d607eae79d744e076b880329ec1f3ba6f01bf70f492e77a56db3213390d9b2 |
Close
Hashes for snowq-0.0.1-py3-none-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ef2015bffe9a8eccaf1c0397962d7b24ee1c48b37ddb27e1ad28452ad3eb17e2 |
|
MD5 | 1a9cec0b55f72b70c1716b95fcdd77b2 |
|
BLAKE2b-256 | a52a244932101859ea39251c5574ed6d705230678cf3bd29f2b9ef9faa691af6 |
Close
Hashes for snowq-0.0.1-py3-none-macosx_10_12_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1372eeb26e8a3fbfbdef5fa45a1dd3e5c4b0159980754b55f170a9bd3229212d |
|
MD5 | 47c502eb698edc091cbe971e1cc6b18b |
|
BLAKE2b-256 | 8c991a3e6f43693cb86e1b0acd3a297c4523adadc978178595e3402e9f1141f5 |