誰かが私を助けてくれることを望んでいる小さな小さな問題がありました。
MYSQLには次のデータセットがあります。
SELECT * FROM account;
pk | customer
1 | 1
2 | 0
3 | 1
必要なのは顧客列だけですが、上記と同じ順序である必要があります。例:
customer
1
0
1
ただし、次のコマンドを実行しようとすると、次のようになります。
SELECT customer FROM account
customer
0
1
1
私はすでに運がなくて次のことを試しました:
SET @rownum=0;
SELECT @rownum:=@rownum+1 as rank, customer FROM account
rank | customer
1 | 0
2 | 1
3 | 1
更新:重要なものを追加するのを忘れました。主キーがvarcharであり、状況によっては整数ではない可能性があるため、主キーによる順序付けに依存することはできません。
データベースにデータが挿入された順序が必要です。varchar値を返す同じクエリを実行すると、正しい順序になります。
何か案は?