2015-07-03 5 views
-2

Я использую python 3.4.2 с sqlite3. импорта pypyodbc, как pyodbc импорта sqlite3Использование python с sqlite3

print ("Connecting via ODBC") 
#conn = pyodbc.connect('DSN=NZSQL') 
print ("Connecting via ODBC") 
# get a connection, if a connect cannot be made an exception will be raised here 
conn = pyodbc.connect("DRIVER=NetezzaSQL;SERVER=xyz;port=123;DATABASE=qwe;UID=hjk;PWD=lkm;") 
cur=conn.cursor() 
print("connected") 


def fetch(): 
    sql_string="CREATE TABLE A as select distinct a.cust,a.loc, a.key,a.bus, \ 
    a.prod,a.sty_code,a.color_code,trim(sty_code) AS style_code ,trim(color_code) AS colour_code, \ 
    price,collect, silh, sty_grp,net_sales_amt_usd,net_sales_qty, AUR,mfsrp \ 
    from final a where a.date between '29Jun2014' and '30May2015' \ 

    cur.execute('%s'%(sql_string)) 
    cur.execute("select * A;") 
    sales=list(cur) 
    for row in sales: 

    print(row) 

выход: (Десятичный ('1567678888'), 'QWERTY', Ничего, datetime.date (2015, 1, 20), десятичное ('1567675888'), ' 52122 ',' LID8T ',' 52122 ',' LID8T ',' 52122_LID8T ',' Legacy CAP ',' Handle ',' CAP Pouch ', Decimal (' 282.00000 '), Decimal (' 2 '), Decimal (' 141 000000000000000000000000000 '),' 1. $ 0 - $ 200 ')

Вопрос: 1. Поскольку это значение напрямую импортируется из базы данных ntezza, можно ли форматировать значения в надлежащем формате? Как? 2. Как отобразить десятичный (1567678888) как 1567678888 в качестве номера? 3. Как отобразить datetime.date (2015, 1, 20) в качестве правильного формата даты?

+1

Как вы думаете, название не совпадает с вопросом? И есть возможный дубликат http://stackoverflow.com/questions/17660001/sqlite3-select-top-n-records-in-a-column –

+0

Пожалуйста, проверьте мой вопрос сейчас. Приносим извинения за неудобства. –

ответ

2

Во-первых более конкретно с вашей question.Now на ваш вопрос,

Чтобы получить Top N записей в sqlite3,

SELECT * FROM SO_table LIMIT 5; 

Для заказа По:

SELECT * FROM SO_table ORDER BY upvotes ASC; 
0

Да, вы можете !

SELECT * FROM tab1 order by field desc limit 10; 
+0

Когда я импортирую таблицы из базы данных netezza, числовой столбец отображается в виде десятичного числа (2347,70) на выходе. Я хочу показать его как 2347.70. Является ли это возможным? –

+0

Можете ли вы опубликовать его здесь или в [pastebin] (http://pastebin.com/login) и поделиться ссылкой, как ее искать. Не удалось получить от вашего комментария. – Cyclotron3x3

+0

В соответствии с тем, что я могу понять из вашего вопроса, используйте array_values ​​() ..It удаляет исходные ключи и заменяет на простые последовательные номера. $ out = array_values ​​($ array); – Cyclotron3x3

Смежные вопросы