我正在尝试使用php创建一个动态表,但是需要让下面的查询正常工作,但遇到了我在查询下面给出的错误。我需要一些帮助来解决它。
SELECT test_case_name AS 'Test Case',
AVG( no_of_satelites ) AS 'Mean Number of Satelites',
AVG( hdop ) AS 'Mean of HDOP',
AVG( longitude ) AS 'Mean of Longitude',
STD( AVG( longitude ) ) AS 'StdDev of Longitude',
AVG( latitude ) AS 'Mean of Latitude',
STD( AVG( latitude ) ) AS 'StdDev of Latitude',
( 1.114 * pow( 10, 5 ) * STD( AVG( latitude ) ) ),
( 1.114 * pow( 10, 5 ) * STD( AVG( longitude ) ) )
FROM test_cases, gga_raw_data
WHERE gga_raw_data.test_case_id = test_cases.test_case_id
GROUP BY test_case_name
错误说:
任何建议或线索将不胜感激。
答案 0 :(得分:3)
左括号太多。你还有两个左括号而不是右括号。
这是不平衡的查询部分:
(( 1.114 * pow( 10, 5 ) * STD( AVG( latitude ) ) ) ,
(( 1.114 * pow( 10, 5 ) * STD( AVG( longitude ) ) )
答案 1 :(得分:0)
您必须拥有GROUP BY子句中列出的SELECT子句中的所有非聚合列:
SELECT test_case_name AS 'Test Case',
AVG( no_of_satelites ) AS 'Mean Number of Satelites',
AVG( hdop ) AS 'Mean of HDOP',
AVG( longitude ) AS 'Mean of Longitude',
STD( AVG( longitude ) ) AS 'StdDev of Longitude',
AVG( latitude ) AS 'Mean of Latitude',
STD( AVG( latitude ) ) AS 'StdDev of Latitude',
( 1.114 * pow( 10, 5 ) * STD( AVG( latitude ) ) ),
( 1.114 * pow( 10, 5 ) * STD( AVG( longitude ) ) )
FROM test_cases, gga_raw_data
WHERE gga_raw_data.test_case_id = test_cases.test_case_id
GROUP BY test_case_name, ( 1.114 * pow( 10, 5 ) * STD( AVG( latitude ) ) ),
( 1.114 * pow( 10, 5 ) * STD( AVG( longitude ) ) )