2014-01-12 3 views
0

Есть ли способ создать запрос, в котором, как пользователь появится диалоговое ввести значение X, чтобы завершить следующий запрос:Interactive Query

SELECT X AS DISTANCE, 
SUM(ABS(LOCX) <= X AND ABS(LOCY) <= X) AS QUANTITY, 
COUNT(*) AS TOTAL, 
CONCAT(AVG(ABS(LOCX) <= X AND ABS(LOCY) <= X)*100, '%') AS PERCENTAGE 
FROM CUSTOMER; 
+0

Предполагая, что MySQL, так как он является продолжением вашего предыдущего вопроса! –

+0

Извините, что вы правы, я не хотел бросать целую кучу вопросов в один поток. – user3178067

ответ

0

Предполагая, что вы кодирования приложение, в котором пользователь предоставляет входы, существует несколько способов для создания запроса, который использует эти значения в качестве переменных - один из способов заключается в следующем:

SET @t1=1, @t2=2, @t3:=4; 
SELECT @t1, @t2; 

Источник: http://dev.mysql.com/doc/refman/5.5/en/user-variables.html

так для вашего конкретного случая, заменяя все экземпляры X с синтаксисом MySQL для определяемой пользователем переменной @X, это будет выглядеть примерно так:

SET @X = user_input; 
SELECT @X AS DISTANCE, 
SUM(ABS(LOCX) <= @X AND ABS(LOCY) <= @X) AS QUANTITY, 
COUNT(*) AS TOTAL, 
CONCAT(AVG(ABS(LOCX) <= @X AND ABS(LOCY) <= @X)*100, '%') AS PERCENTAGE 
FROM CUSTOMER; 
+0

При вводе этого кода MyPHPAdmin просто возвращает ошибку, должен ли этот запрос запрашивать ввод при выполнении? – user3178067

+0

решил, я не читал ваш код правильно, спасибо – user3178067