Select Query with dynamic dates
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Davin
am 11 Nov. 2014
Kommentiert: Davin
am 11 Nov. 2014
Hello
I am trying to execute a simple select query from my SQL database( dexplore on Matlab). I input the date in a gui, which takes in the date format with this command :
SDV = sprintf('%04d-%02d-%02d',SYYYY,SMM, SDD)
I get a date like this 2XXX - MM - DD
Then I need to import some data with date > SDV
My query is the following :
conn = database('', '', '', 'Vendor', 'MICROSOFT SQL SERVER', 'Server', 'TW\SQLEXPRESS', 'PortNumber', 1433, 'AuthType', 'Windows');
%Read data from database.
curs = exec(conn, ['SELECT XIV.Date'...
' , XIV.Value'...
' FROM master.dbo.XIV '...
' WHERE XIV.Date >=' SDV ]);
curs = fetch(curs);
The Query dont work because its not accepting the syntax at the end. When I use a fixed date, the syntax it takes is the following :
conn = database('', '', '', 'Vendor', 'MICROSOFT SQL SERVER', 'Server', 'TW\SQLEXPRESS', 'PortNumber', 1433, 'AuthType', 'Windows');
%Read data from database.
curs = exec(conn, ['SELECT VXX.Date'...
' FROM master.dbo.VXX '...
' WHERE VXX.Date > ''2004-05-20''']);
curs = fetch(curs);
close(curs);
This works but the date is not dynamic here.
Do you know how to write the query correctly in order for it to accept the SDV date?
Thank you very much
D
0 Kommentare
Akzeptierte Antwort
the cyclist
am 11 Nov. 2014
Bearbeitet: the cyclist
am 11 Nov. 2014
In place of
' WHERE VXX.Date > ''2004-05-20''']);
try
' WHERE VXX.Date > ''',SDV,'''']);
The problem with your original syntax is that it was failing to put in the required enclosing single quotes.
5 Kommentare
the cyclist
am 11 Nov. 2014
Sorry to be commenting in drips and drabs, but another trick I do is to assign the query to a string variable:
queryText = 'SELECT * FROM TABLE'
Then after I build the query (possibly replacing with a variable, as you have done), then I'll print queryText to the MATLAB screen, just to make sure it is the exact string that needs to be sent in SQL.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Database Toolbox finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!