Php 及 (“TargetName”='FF.80x80.C100'))或 (((“参数名称”=“斑点”为G级)和 (“TargetName”='FF.80x80.K020'))或 (((“参数名称”=“斑点”为G级)和 (“TargetName”='FF.80x80.K040'))或 (((“参数名称”=“斑点”为G级)和 (“TargetName”=“FF.80x80.K100”)或((“ParameterName”=“HDST”)和 (“TargetName”=“T40Sv.010”)或((“ParameterName”=“HDST2”)和 (“TargetName”=“T40Sv.010”)或((“ParameterName”=“HDST”)和 (“TargetName”=“T40Sh.010”)或((“ParameterName”=“HDST2”)和 (“TargetName”=“T40Sh.010”)或((“ParameterName”=“HDST”)和 (“TargetName”=“T40Sv.030”)或((“ParameterName”=“HDST2”)和 (“TargetName”=“T40Sv.030”)或((“ParameterName”=“HDST”)和 (“TargetName”=“T40Sh.030”)或((“ParameterName”=“HDST2”)和 (“TargetName”='T40Sh.030'))和(“ParameterValue”。“ParameterValue” !=-99999)按“PrintSampleID”、“MeasurementID”排序

Php 及 (“TargetName”='FF.80x80.C100'))或 (((“参数名称”=“斑点”为G级)和 (“TargetName”='FF.80x80.K020'))或 (((“参数名称”=“斑点”为G级)和 (“TargetName”='FF.80x80.K040'))或 (((“参数名称”=“斑点”为G级)和 (“TargetName”=“FF.80x80.K100”)或((“ParameterName”=“HDST”)和 (“TargetName”=“T40Sv.010”)或((“ParameterName”=“HDST2”)和 (“TargetName”=“T40Sv.010”)或((“ParameterName”=“HDST”)和 (“TargetName”=“T40Sh.010”)或((“ParameterName”=“HDST2”)和 (“TargetName”=“T40Sh.010”)或((“ParameterName”=“HDST”)和 (“TargetName”=“T40Sv.030”)或((“ParameterName”=“HDST2”)和 (“TargetName”=“T40Sv.030”)或((“ParameterName”=“HDST”)和 (“TargetName”=“T40Sh.030”)或((“ParameterName”=“HDST2”)和 (“TargetName”='T40Sh.030'))和(“ParameterValue”。“ParameterValue” !=-99999)按“PrintSampleID”、“MeasurementID”排序,php,sql,Php,Sql,我所能想到的是,我们的鬼影幅度被解释为与使用“like”的语句相同。从我读到的关于like声明的内容来看,它不应该这样做。它仍然无法解释为什么会收到一条关于合并的错误消息 我最近读到了以下关于这方面的内容: 检查qry字符串是否确实包含您认为它的功能。确保它以SELECT开头。它包含SELECT。我在错误消息输出的开头看到它。SQL字符串有多长?有多少个字符?错误消息是否显示整个SQL字符串?是的,错误消息显示整个SQL字符串。当我将字符串复制到word时,它会显示带空格的字符数为6708。请

我所能想到的是,我们的鬼影幅度被解释为与使用“like”的语句相同。从我读到的关于like声明的内容来看,它不应该这样做。它仍然无法解释为什么会收到一条关于合并的错误消息

我最近读到了以下关于这方面的内容:


检查qry字符串是否确实包含您认为它的功能。确保它以SELECT开头。它包含SELECT。我在错误消息输出的开头看到它。SQL字符串有多长?有多少个字符?错误消息是否显示整个SQL字符串?是的,错误消息显示整个SQL字符串。当我将字符串复制到word时,它会显示带空格的字符数为6708。请尝试SQL探查器,并检查它实际要运行的SQL。
$qry = 'SELECT "PrintSamples"."PrintSampleID", "PrintSamples"."TestPatternName", "PrintSamples"."PrintCopyID", 
"DigitalImages"."CaptureTime", "PrintSampleAnalyses"."psaTicket", "Measurements"."MeasurementID", "Measurements"."MeasurementUuid", 
SUBSTRING("OperatorLastName",1,1) AS "lastInitial", SUBSTRING("OperatorFirstName",1,1) AS "firstInitial",
"ParameterValues"."ParameterID", "ParameterName", "TargetName", "ParameterValues"."ParameterValue"
FROM "ParameterValues"
LEFT JOIN "Measurements" ON "ParameterValues"."MeasurementID"="Measurements"."MeasurementID" 
LEFT JOIN "PrintSampleAnalyses" ON "PrintSampleAnalyses"."psaID"="Measurements"."psaID"
LEFT JOIN "DigitalImages" ON "DigitalImages"."ImageID"="PrintSampleAnalyses"."ImageID" 
LEFT JOIN "PrintSamples" ON "DigitalImages"."PrintSampleID"="PrintSamples"."PrintSampleID"
LEFT JOIN "Sessions" ON "Sessions"."SessionID"="PrintSampleAnalyses"."SessionID" 
LEFT JOIN "Operators" ON "Operators"."OperatorID"="Sessions"."OperatorID"
LEFT JOIN "ParameterNames" ON "ParameterNames"."ParameterID"="ParameterValues"."ParameterID"
LEFT JOIN "Targets" ON "Targets"."TargetID"="Measurements"."TargetID"
WHERE ('; 
// this list comes from the "MeasurementNames" table

foreach ($measurementIDs as $mid){
    if($mid[0] == "AvgGhostValAsSir77") $qry .= '(("ParameterName" LIKE ' . "'%AvgGhostValAsSir77%'" . ') AND ("TargetName"=' . "'" . $mid[1] . "')) OR "; 
    else if($mid[0] == "MaxNegGhostingValAsSir77") $qry .= '(("ParameterName" LIKE ' . "'%MaxNegGhostingValAsSir77%'" . ') AND ("TargetName"=' . "'" . $mid[1] . "')) OR "; 
    else $qry .= '(("ParameterName"=' . "'" . $mid[0] . "'" . ') AND ("TargetName"=' . "'" . $mid[1] . "')) OR ";
}    
$qry = substr ($qry, 0, -4);
$qry .= ") ";

$qry .= ' AND ("ParameterValues"."ParameterValue" != -99999) ORDER BY "PrintSampleID", "MeasurementID"';

dataLog("Start pq query");

$result = pg_query ($pg_conn, $qry);