однострочное решение
import os
os.system("wc -l filename")
мой фрагмент
os.system ('wc -l * .txt')
blockquote> blockquote> blockquote>0 bar.txt 1000 command.txt 3 test_file.txt 1003 total
Используйте unnest()
в боковом соединении:
with my_data(json_column) as (
values (
array['{"a":1,"b":2,"c":"bar"}','{"a":2,"b":3,"c":"baz"}']::jsonb[])
)
select
value->>'a' as a,
value->>'b' as b,
value->>'c' as c
from my_data
cross join unnest(json_column) as value
a | b | c
---+---+-----
1 | 2 | bar
2 | 3 | baz
(2 rows)
Вам могут потребоваться некоторые приведения или преобразования, например:
select
(value->>'a')::int as a,
(value->>'b')::int as b,
(value->>'c')::text as c
from my_data
cross join unnest(json_column) as value
Боковое соединение означает, что функция unnest()
будет выполняется для каждой строки из основной таблицы. Функция возвращает элементы массива как value
.