2016-04-26 7 views
1

私は助けが必要です。私はpyodbcを使用しており、サーバーと私のテーブルとの接触を得ています。今日から新しい更新を取得したいだけです。 私は使用しましたcursor.execute("SELECT * FROM Disk")今日から私のMSSQLでPyodbc

しかし、これで私は6000行のようになります。日付26日から今日の日付まで。 どうすれば今日の日付から1週間先まで行くことができますか?予め

cursor.execute("SELECT * FROM Disk WHERE dt > todays_date")

おかげ

+0

テーブルスキーマに関する詳細情報を提供できますか? – salomonderossi

+0

done =)私は、プログラミングのこの世界にはかなり新しいと思う。 – Ares

答えて

0
import sys 
import pyodbc 
from datetime import datetime 

cnxn = pyodbc.connect(r'DRIVER={SQL Server};SERVER=192.168.205.14\WHATSUP;DATABASE=Monitor;UID=username;PWD=password') 
cursor = cnxn.cursor() 

for row in cursor.fetchall(): 
    print (row) 

これは、この順に

CUSTID、サーバー名、ドライブ、DT、SIZE_MB、FREE_MB、last_rebootとMSSQLサーバからデータを返します、last_update、wblastSuccesfull、wblastbackup、TempID

( 'BIOBE'、 'SBS'、 'C​​:'、'26 '0 「2.2016」、「279」、「151」、「36」、「38」、「25.202.2016」、「25.02.2016」、453)

があるが、TempIDは456から6023になり、 2月に戻る日付今日から1週間しか取れないようにしたい。それは可能ですか?

1

mysqlの日付と時刻関数を使用できます。私は私ので、別物、原因をしようとしている https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

+0

ありがとうGautam840、しかし不幸にもそれは仕事をしなかった。トレースバック(最新の最後の呼び出し): ファイル "C:\ Users \ alex \ Desktop \ Programmering \ Blattdata \ sql.py"、行8、 cursor.execute( "SELECT * FROM Disk "42000"、 "[42000] [Microsoft] [ODBC SQL Server Driver] [SQL Server]キーワード 'CURRENT_DATE'(156)(SQLExecDirectW)の近くの構文が正しくありません") – Ares

0

OK: cursor.execute( "ディスクDT> CURRENT_DATE SELECT * FROM")

続きを:今日からエントリを参照するにはたとえば、 ノルウェーに住んでいる、我々は別の日付形式を持っている...私たちはdd.mm.yyy eksample持っている:2016年12月24日

import pyodbc 
import datetime 

format = "%d.%m.%Y" 
today = datetime.datetime.today() 
s = today.strftime(format) 
d = datetime.datetime.strptime(s, format) 
print (d.strftime(format)) 

c = pyodbc.connect(r'DRIVER={SQL Server};SERVER=192.168.205.14\WHATSUP;DATABASE=Monitor;UID=sa;PWD=WhatsUp_Gold') 
cursor = c.cursor() 
cursor.execute("SELECT * FROM Disk WHERE dt = '27.04.2016'") 

for row in cursor.fetchall(): 
    print (row) 

、これでは私は、出力を得る:

27.04.2016 <--this is because of the print (d.strftime(format))"

(' Aconte ', 'Srv1 ', 'C: ', '27.04.2016', '466 ', '302 ', '6 ', '6 ', ' ', ' ', 6699)

これはどのように変更することができますか?[SELECT * FROM Disk WHERE dt = '27 .04.2016 '" " のようなものに「SELECT * FROM disk WHERE dt =' CURRENT_DATE '」?

関連する問題