Microsoft Access 掲示板

クエリでの並べ替え

1 コメント
views
4 フォロー

下記のコードで質問があります。

SELECT 
    [ID],
    [親番], 
    [売上先],
    [子番], 
    [支店_営業所],
    [孫番], 
    [現場名],
    [府県],
    [締日],
    [油種],
    [直近3ヶ月], 
    [仕入],
    [売上],
    [利益],
    [仕入コード],
    [仕入先],
    [単価_ランク_コード],
    [単価_ランク],
    [開始(復活)],
    [終了],
    [並べ順]
FROM (SELECT 
            [ID],
            [親番], 
            [売上先],
            [子番], 
            [支店_営業所],
            [孫番], 
            [現場名],
            [府県],
            [締日],
            [油種],
            [直近3ヶ月], 
            [仕入],
            [売上],
            [利益],
            [仕入コード],
            [仕入先],  
            [単価_ランク_コード],
            [単価_ランク],
            IIf([直近3ヶ月] BETWEEN DateSerial(Year(Date()), Month(Date()) - 2, 1) 
                AND DateSerial(Year(Date()), Month(Date()) - 1, 0), 1, 
            IIf([直近3ヶ月] BETWEEN DateSerial(Year(Date()), Month(Date()) - 1, 1) 
                AND DateSerial(Year(Date()), Month(Date()), 0), 2, 
            IIf([直近3ヶ月] BETWEEN DateSerial(Year(Date()), Month(Date()), 1) 
                AND DateSerial(Year(Date()), Month(Date()) + 1, 0), 3, 
            4))) AS [並べ順]
        FROM 
            [MT_検索テーブル]
    )  AS サブクエリ
WHERE ((([サブクエリ].[直近3ヶ月]) Between DateSerial(Year(Date()),Month(Date())-2,1) And DateSerial(Year(Date()),Month(Date()),Day(Date()))))
ORDER BY 
[親番],
[子番],
[孫番],
[仕入先],
[油種コード],
[並べ順]ASC;

このコードですと、月初は、並べ替えができるのですが、その中に、

例えば、2024/8/1と、2024/8/15が、直近3ヶ月にある場合に、上手く並べ替えができません。
8月15日も、8月16日も存在する可能性もあります。

ここを、どのように変更すればいいでしょうか?

よろしくお願いします

しん
作成: 2024/09/10 (火) 20:05:10
通報 ...
1
しん 2024/09/10 (火) 20:12:21 051ad@9fff4

すいません。ソートの条件に、直近3ヶ月を加えたことで、できました。
申し訳ありません。
解決しました。