Skip to content

Instantly share code, notes, and snippets.

@luisdelatorre012
luisdelatorre012 / sample_json_to_database_sqlalchemy.py
Created September 13, 2024 01:40
sample json to database sqlalchemy
import json
import uuid
from sqlalchemy import create_engine, Column, Integer, String, Float, Boolean, DateTime, ForeignKey
from sqlalchemy.orm import declarative_base, sessionmaker, relationship
from sqlalchemy.dialects.mssql import UNIQUEIDENTIFIER
from datetime import datetime
Base = declarative_base()
class Product(Base):
@luisdelatorre012
luisdelatorre012 / json_schema_to_sql.py
Last active September 13, 2024 16:02
json schema to sql
import json
import re
def convert_json_schema_to_sql(schema: dict[str, any]) -> list[str]:
tables = []
foreign_keys = []
indexes = []
definitions = schema.get('definitions', {})
# Handle top-level properties
@luisdelatorre012
luisdelatorre012 / genson_schema_creator.py
Created September 13, 2024 01:35
genson schema creator
import json
from pathlib import Path
from genson import SchemaBuilder
def generate_schema_from_files(directory):
builder = SchemaBuilder()
directory_path = Path(directory)
for file_path in directory_path.glob('*.json'):
with file_path.open('r') as f:
@luisdelatorre012
luisdelatorre012 / cross_apply.sql
Created September 12, 2024 15:41
cross apply
SELECT
t.Category,
MIN(j.eventRecordedTime) AS MinEventTime,
MAX(j.eventRecordedTime) AS MaxEventTime,
AVG(j.someNumericValue) AS AvgValue
FROM
t
CROSS APPLY OPENJSON(CAST(CAST(t.message AS varchar(max)) AS nvarchar(max)))
WITH (
eventRecordedTime datetime2 '$.eventRecordedTime',
@luisdelatorre012
luisdelatorre012 / mongo_debug.py
Created September 12, 2024 02:16
mongo_debug.py
#Use explicit comparison in aggregation:
#Let's try using the aggregation framework with explicit type checking:
rom bson import Int64
pipeline = [
{
"$match": {
"$expr": {
"$and": [
@luisdelatorre012
luisdelatorre012 / motorized_mongo.py
Created September 11, 2024 22:33
motored mongo db
import motor.motor_asyncio
import asyncio
from typing import List, Dict, Any
import logging
from urllib.parse import quote_plus
from contextlib import asynccontextmanager
# Set up logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
@luisdelatorre012
luisdelatorre012 / kerberos_from_linux.py
Created September 9, 2024 11:57
kerberos from linux
import subprocess
from dynaconf import Dynaconf
from typing import Dict
from sqlalchemy import create_engine
from sqlalchemy.engine import Engine
import pandas as pd
# Assume get_keeper_secrets_by_title and query_to_pandas are defined elsewhere
# from your_module import get_keeper_secrets_by_title, query_to_pandas
@luisdelatorre012
luisdelatorre012 / graph_path.md
Created September 5, 2024 11:32
graph path

Prompt:

undefined

Response:

undefined

Prompt:

Use python for this. Whatever packags you wwant.

I have a graph. Each node has location label, and all nodes have edges between them.

@luisdelatorre012
luisdelatorre012 / sharepoint_connection.py
Last active August 28, 2024 14:44
sharepoint connection
import httpx
from msal import ConfidentialClientApplication
from typing import Optional, List, Dict, Any
from dynaconf import Dynaconf
# Initialize Dynaconf
settings = Dynaconf(
settings_files=["settings.toml", ".secrets.toml"],
environments=True,
load_dotenv=True,
@luisdelatorre012
luisdelatorre012 / kafka_consumer.py
Last active August 27, 2024 16:37
Kafka Consumer
import json
import signal
import asyncio
from confluent_kafka import Consumer, KafkaError, Message
from fastavro import reader
import io
from sqlalchemy.ext.asyncio import create_async_engine, AsyncEngine
from sqlalchemy import Table, Column, Integer, TIMESTAMP, MetaData
from sqlalchemy.dialects.postgresql import JSONB
from sqlalchemy.exc import SQLAlchemyError