我有一个SQL语句,我需要帮助,看起来像这样
SELECT
unix_timestamp(prefix_rsform_submission_values.FieldValue) AS dato,
prefix_rsform_submission_values.SubmissionValueId AS var,
(SELECT prefix_rsform_submission_values.FieldValue FROM prefix_rsform_submission_values WHERE prefix_rsform_submission_values.SubmissionValueId = (var -1)) AS lykke
FROM
prefix_rsform_submissions
INNER JOIN prefix_rsform_submission_values ON (prefix_rsform_submissions.SubmissionId = prefix_rsform_submission_values.SubmissionId)
WHERE
prefix_rsform_submissions.FormId = 10 AND
prefix_rsform_submissions.UserId = 278 AND
prefix_rsform_submission_values.FieldName = 'dato'
ORDER BY
prefix_rsform_submission_values.SubmissionValueId
我在Joomla模块中使用结果。我需要第一列包含'Dato'和第二列包含'Lykke' 无论如何要从输出中删除'var'列或让它进入第3列? 目前它输出这个,我首先需要dato然后lykke。只要var不在第一列或第二列中,var就在out中并不重要。
dato var lykke
1290254400 1393 10
1448020800 1397 9
1637409600 1401 9
答案 0 :(得分:0)
更改列的select子句中的顺序。使用此:
SELECT t.dato, t.lykke
FROM
(SELECT
unix_timestamp(prefix_rsform_submission_values.FieldValue) AS dato,
prefix_rsform_submission_values.SubmissionValueId AS var,
(SELECT prefix_rsform_submission_values.FieldValue FROM prefix_rsform_submission_values WHERE prefix_rsform_submission_values.SubmissionValueId = (var -1)) AS lykke
FROM
prefix_rsform_submissions
INNER JOIN prefix_rsform_submission_values ON (prefix_rsform_submissions.SubmissionId = prefix_rsform_submission_values.SubmissionId)
WHERE
prefix_rsform_submissions.FormId = 10 AND
prefix_rsform_submissions.UserId = 278 AND
prefix_rsform_submission_values.FieldName = 'dato'
ORDER BY
prefix_rsform_submission_values.SubmissionValueId) t
通过这种方式,您可以根据需要制作相同的订单。
与ALIAS编辑的代码:
SELECT t.dato, t.lykke
FROM
(SELECT
unix_timestamp(pr3.FieldValue) AS dato,
pr3.SubmissionValueId AS var,
(SELECT pr1.FieldValue
FROM prefix_rsform_submission_values AS pr1
WHERE pr1.SubmissionValueId = (var -1)) AS lykke
FROM
prefix_rsform_submissions AS pr2
INNER JOIN prefix_rsform_submission_values pr3 ON (pr2.SubmissionId = pr3.SubmissionId)
WHERE
pr2.FormId = 10 AND
pr2.UserId = 278 AND
pr3.FieldName = 'dato'
ORDER BY
pr3.SubmissionValueId) AS t