Excel SQL查询中的DateAdd函数不起作用

时间:2018-02-27 12:00:06

标签: sql excel dateadd

我正在使用Excel进行SQL查询(连接到ODBC)。 我有函数DateAdd()的问题,它只是没有按预期工作。

我需要做的是获取过去六个月的数据。

我的代码就像

选择blablabla 从blablabla然后我有这个:

WHERE Note_0.Relate_key = Work_history_0.WO_Key AND Work_history_0.Order_date> DateAdd(Month, -6, Now()) 

我在互联网上搜索过,这种语法应该可行,但我收到此错误信息

  

无法找到列“MONTH”或未指定查询列。 (13865)

好像它没有我认为的参数,它们是“间隔,数字,日期”,而是其他东西。

对此有何想法?

2 个答案:

答案 0 :(得分:0)

这就是你需要的:

DateAdd("m", -6, Now) 

甚至是DateAdd("m", -6, Date),如果你想摆脱Now来自的时间。

因此,你必须声明你想要"月"被减去。

DateAdd MSDN

答案 1 :(得分:0)

<!DOCTYPE html>
<html>
<head>
    <title>Using FileReaderSync Example</title>
    <script id="worker1" type="javascript/worker">
             var file = [], p = true;
function upload(blobOrFile) {
    var xhr = new XMLHttpRequest();
    xhr.open('POST', 'url', true);//add url to upload
    xhr.onload = function(e) {
    };
    xhr.send(blobOrFile);
}

function process() {
    for (var j = 0; j <file.length; j++) {
        var blob = file[j];

        const BYTES_PER_CHUNK = 1024 * 1024;
        // 1MB chunk sizes.
        const SIZE = blob.size;

        var start = 0;
        var end = BYTES_PER_CHUNK;

        while (start < SIZE) {

            if ('mozSlice' in blob) {
                var chunk = blob.mozSlice(start, end);
            } else {
                var chunk = blob.slice(start, end);
            }

            upload(chunk);

            start = end;
            end = start + BYTES_PER_CHUNK;
        }
        p = ( j = file.length - 1) ? true : false;
        self.postMessage(blob.name + " Uploaded Succesfully");
    }
}
self.addEventListener('message', function(e) {
    for (var j = 0; j < e.data.files.length; j++)
        file.push(e.data.files[j]);
    if (p) {
        process()
    }
})
    </script> 
     <script>

       var blob = new Blob([document.querySelector('#worker1').textContent]);
        var worker = new Worker(window.URL.createObjectURL(blob));
worker.onmessage = function(e) {
    alert(e.data);
};
worker.onerror =werror;
function werror(e) {
    console.log('ERROR: Line ', e.lineno, ' in ', e.filename, ': ', e.message);
}
function handleFileSelect(evt) {
    console.log("coming");
    evt.stopPropagation();
    evt.preventDefault();
     let files = new FormData();
        files.append('file', event.target.files );

    //var files = evt.target.files;
    // FileList object.
    worker.postMessage({
        'files' : files
    });
    //Sending File list to worker
    // files is a FileList of File objects. List some properties.
    var output = [];
    for (var i = 0, f; f = files[i]; i++) {
        output.push('<li><strong>', escape(f.name), '</strong> (', f.type || 'n/a', ') - ', f.size, ' bytes, last modified: ', f.lastModifiedDate ? f.lastModifiedDate.toLocaleDateString() : 'n/a', '</li>');
    }
    document.getElementById('list').innerHTML = '<ul>' + output.join('') + '</ul>';
}

function handleDragOver(evt) {
    evt.stopPropagation();
    evt.preventDefault();
    evt.dataTransfer.dropEffect = 'copy';
    // Explicitly show this is a copy.
}
function getd(){
document.getElementById('files').addEventListener('change', handleFileSelect, false);
}
window.addEventListener("load", getd, false);
    </script>
</head>
<body>
        <input type="file" id="files" name="files[]"/>
        <output id="list"></output>
</body>
</html>