このクエリを実行して行番号で行を選択しようとしましたが、where 句で不明な列 'row' が引き続き取得されます。このクエリは可能ですか
SELECT @row := @row + 1 AS row, pi.*
FROM ci_patient_info pi
where row = 2
このクエリを実行して行番号で行を選択しようとしましたが、where 句で不明な列 'row' が引き続き取得されます。このクエリは可能ですか
SELECT @row := @row + 1 AS row, pi.*
FROM ci_patient_info pi
where row = 2
2番目のレコードが必要な場合は、LIMIT
句を使用してください。
SELECT pi.*
FROM ci_patient_info pi LIMIT 1, 1
で包むsubquery
SELECT c.*
FROM
(
SELECT @row := @row + 1 AS row, pi.*
FROM ci_patient_info pi
) c
where c.row = 2
更新 1
おそらく、サブクエリは次のようになります。
SELECT @row := @row + 1 AS row, pi.*
FROM ci_patient_info pi, (SELECT @row:=0) x