Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- account_id | parent_id
- ------------------------
- 5555 | None (пустой)
- account_id | parent_id
- -----------------------
- 6666 | 5555
- # -*- coding: utf-8 -*-
- import psycopg2
- import psycopg2.extras
- sql = "select * from accounts"
- try:
- conn = psycopg2.connect("dbname='DB' user='postgres'"
- " host='postgres.contora.com' password='xxxxxxxx'")
- except psycopg2.Error as err:
- print("Connection error: {}".format(err))
- try:
- cur = conn.cursor(cursor_factory=psycopg2.extras.RealDictCursor)
- cur.execute(sql)
- data = cur.fetchall()
- except psycopg2.Error as err:
- print("Query error: {}".format(err))
- data_dict = []
- for row in data:
- data_dict.append(dict(row))
- start_count = 0
- for data_dict[start_count] in data_dict:
- ib_level = 0
- if data_dict[start_count].get('parent_id') is None:
- data_dict[start_count].update({'IB_level': ib_level})
- print('IB level 0:n')
- print(data_dict[start_count])
- elif isinstance(data_dict[start_count].get('parent_id'), int):
- ib_level_calc = ib_level + 1
- data_dict[start_count].update({'IB_level': ib_level_calc})
- print('IB level 1:n')
- print(data_dict[start_count])
- start_count = start_count + 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement