はじめまして。私vb初心者ですが
どうにもソートで1週間ほど苦しんでいます。:;
環境はvb2008,windows vistaです。
SQLCm.CommandText = "select * FROM 会員マスタ order by 総合点数 DESC"
Cn.Open()
SQLCm.ExecuteNonQuery()
Cn.Close()
MsgBox("並べ替えしました")
SQLCm.CommandText = "select name from keibayosou"
Dim value As String
Cn.Open()
value = SQLCm.ExecuteScalar
Cn.Close()
MsgBox(value)
やりたいことは データをソートして一番点数が高い人の名前を抽出したいです。
しかし上記のプログラムだと 佐藤=50点→鈴木100点の順番でデータベースに書き込んでも
変数valueには佐藤が入っています。鈴木=100点→佐藤=50点の順番に書き込むと鈴木がでます。書き込んだ順番のデータの一番上が変数valueに入ってしまいます。
どうしてもプログラムを完成させたいので是非ご教授お願いします。
余談ですが、私C言語ではポインタなどはすんなり理解できましたが、
Cでもバブルソート、クイックソートのアルゴリズムの理解に苦しみました。
プログラムの書き方はぜんぜん違うとは理解していますが、言語が変わってもツマずくポイントはみなさん一緒ですか?
リンクしとくよ
http://rucio.groupsite.jp/commu/ThreadDetail.aspx?ThreadId=8985
データベースと主キー(インデックス)とSQL文の方も
勉強しないと・・・
どうにもならんヨ!
VBの問題ではない・・・
以上。
DB 内のデータに「順番」という概念はありません。
書き込んだ順に読み出せることは期待しないでください。
順番が必要なら、Select 時に Order by することです。
> どうにもならんヨ!
んなこたーない。少なくともこの問題に関してはね。
ツイート | ![]() |