-2

このクエリに欠陥がある可能性があることは承知していますが、改善する方法を教えてください。それは私にエラーを与えています。私は初心者なので、失礼をしないでください。

クエリは次のとおりです。

SET @start = 0;

IF @start <= 45 
                   (SELECT 
                   groups.id AS groupid, 
                   count(papers.classes) AS cl, 
                   start + cl AS st 
               FROM groups,
                    gpaper,
                    papers 
               WHERE cid = '1'
                   AND sid = '4'
                   AND groups.id = '14'
                   AND gpaper.gid = groups.id
                   AND gpaper.pid = papers.paperid 
              ORDER BY groupname) AS t

st が cl と等しくなるまで、クエリの結果が必要です。

取得しているエラーは次のとおりです。

#1064 - SQL 構文にエラーがあります。'IF @start <= 45 (SELECT groups.id AS g' at line 1) 付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。

4

2 に答える 2