欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

sqlserver - 同一句sql在php里执行没有结果,在navicat里查询有结果是什么原因?

程序员文章站 2024-02-20 13:56:10
...
如题,同一句sql在php里执行没有结果,在navicat里查询有结果。
SELECT
    TOP 25 SHANGPIN.SPDM,
    SHANGPIN.SPMC,
    GUIGE1.GGMC AS YS,
    SUM (VW_SDLSMX.SL) AS SL,
    FJSX3.SXMC AS SHEJI,
    FJSX4.SXMC AS DABAN
FROM
    SHANGPIN,
    GUIGE1,
    GUIGE2,
    VW_SDLSMX,
    FJSX3,
    FJSX4
WHERE
    VW_SDLSMX.SPDM = SHANGPIN.SPDM
AND VW_SDLSMX.GG1DM = GUIGE1.GGDM
AND VW_SDLSMX.GG2DM = GUIGE2.GGDM
AND VW_SDLSMX.DM1 != '900'
AND VW_SDLSMX.DM1 != '901'
AND SHANGPIN.FJSX3 = FJSX3.SXDM
AND SHANGPIN.FJSX4 = FJSX4.SXDM
AND VW_SDLSMX.SPDM IN (
    SELECT
        SPDM
    FROM
        SHANGPIN
    WHERE
        BYZD4 = '000'
    AND BYZD5 = 'eg'
)
GROUP BY
    SHANGPIN.SPDM,
    SHANGPIN.SPMC,
    GUIGE1.GGMC,
    FJSX3.SXMC,
    FJSX4.SXMC
ORDER BY
    SUM (SL) DESC

回复内容:

如题,同一句sql在php里执行没有结果,在navicat里查询有结果。

SELECT
    TOP 25 SHANGPIN.SPDM,
    SHANGPIN.SPMC,
    GUIGE1.GGMC AS YS,
    SUM (VW_SDLSMX.SL) AS SL,
    FJSX3.SXMC AS SHEJI,
    FJSX4.SXMC AS DABAN
FROM
    SHANGPIN,
    GUIGE1,
    GUIGE2,
    VW_SDLSMX,
    FJSX3,
    FJSX4
WHERE
    VW_SDLSMX.SPDM = SHANGPIN.SPDM
AND VW_SDLSMX.GG1DM = GUIGE1.GGDM
AND VW_SDLSMX.GG2DM = GUIGE2.GGDM
AND VW_SDLSMX.DM1 != '900'
AND VW_SDLSMX.DM1 != '901'
AND SHANGPIN.FJSX3 = FJSX3.SXDM
AND SHANGPIN.FJSX4 = FJSX4.SXDM
AND VW_SDLSMX.SPDM IN (
    SELECT
        SPDM
    FROM
        SHANGPIN
    WHERE
        BYZD4 = '000'
    AND BYZD5 = 'eg'
)
GROUP BY
    SHANGPIN.SPDM,
    SHANGPIN.SPMC,
    GUIGE1.GGMC,
    FJSX3.SXMC,
    FJSX4.SXMC
ORDER BY
    SUM (SL) DESC

是不是没有 commit

打印出你的sql语句看下,可能传值的时候要加引号。如:变量='$...';

之前也遇到同样的情况,当时把语句复制到window s的记事本,再复制粘贴回回去,居然就好了。

相关标签: php sqlserver