- ベストアンサー
並び替え
maruru01の回答
再びmaruru01です。 どうやら逆のようでした。 ORDER BY 伝票日付, 店舗番号, 区分番号1, 区分番号2 これならいいと思いますが。 では。
関連するQ&A
- 構造体のソートに関して
VB初心者です。 Private Save() As InIDtyp Private Type InIDtyp ID As String Name As String Unit As String End Type という宣言をしま構造体で値が入っているときにIDをキーとしてソートすることは可能でしょうか。 1回やってみたのですが、IDのみソートされてしまい、NameとUnitは一緒にソートされずにそのまま残ってしまいました。 デバッグをかけて中を見ましたらこんな感じでした。 例: 元の構造体 Save(0) ------ID: 56 ------Name: AA ------Unit: ms Save(1) ------ID: 35 ------Name: KY ------Unit: yy Save(2) -----ID: 33 ------Name: LI ------Unit: ba ソート後 Save(0) -----ID: 33 ------Name: AA ------Unit: ms Save(1) -----ID: 35 ------Name: KY ------Unit: yy Save(2) -----ID: 56 ------Name: LI ------Unit: ba どなたか構造体のソートのやり方をご存知の方がいましたらご教授お願いします。
- 締切済み
- Visual Basic
- 構造体配列の安定なソート
出席番号と得点の配列を持つ構造体配列で、 出席番号順に並んだ状態でqsortを使って得点をソートする場合、 同じ得点の人でも、出席番号順はばらばらになってしまいますよね。 調べてみて、バブルソートなど安定なソートを使えばいいということが分かったのですが、 qsortは標準ライブラリにあって、 比較関数も見よう見まねで作ってなんとかなったのですが、 他の方法となると具体的にどうすればいいのか、 よくわからない状況です。 http://homepage1.nifty.com/daccho/program/algo/sort3.htm こちらのサイトのソースファイルを見て、 普通のint配列のバブルソートは出来たのですが、 構造体配列を、構造体の中の一つの要素をキーにバブルソートできるようにするには、 ここからどのように変更すればいいのでしょうか? 並び替える内容はint型だけなので、文字列をソートできるようにする必要はなく、 ソート対象も少ないので(上限100程度)、速度的な問題は考慮しなくて大丈夫だと思います。 Cは勉強中で、基本文法がわかるぐらいという状況で、 もしかしたら変なことを言っているのかもしれませんが、 よろしくお願いします。
- ベストアンサー
- C・C++・C#
- LASTVAL()の使い方
こんにちは。 現在、バッチで伝票を登録するプログラムを組んでいます。 実施したい内容は、伝票番号を採番し、伝票テーブルと伝票明細テーブルにデータを書き込むと言う物です。 具体的には、以下のテーブルです。 1.TRN_DENPYO DENPYO_NO DENPYO_HIDUKE 2.TRN_DENPYO_MEISAI DENPYO_NO DENPYO_MAISAI_NO DENPYO_SYOHINCD ※TRN_DENPYOのDENPYO_NOはserialです。 そこで、TRN_DENPYO にレコードを追加した後、自動的にカウントアップされるTRN_DENPYOのDENPYO_NOを取得するために LASTVAL()を使用したいのですが、うまく行きません。 以下、実際に記述しているSQL文です。 $sql = 'INSERT INTO "TRN_DENPYO"("DENPYO_HIDUKE")VALUES(' . $denpyo_hiduke . ')'; $db->query($sql); $sql = 'SELECT LASTVAL()'; $result =& $db->query($sql); while($row = $result->fetchRow(DB_FETCHMODE_ASSOC)) { $denpyo_no = $row['LASTVAL()']; } echo $denpyo_no; この時点で、$denpyo_no の値が表示されると思っているのですが、表示されません。 どなたか教えて頂けませんでしょうか? ちなみに環境は、PostgerSQL8.2 php5を使用しています。
- ベストアンサー
- PostgreSQL
- 条件をつけて日付の古い行を抜き出したい
SQLserver2005を使っています。 下記のようなテーブルがあります。 ID 処理番号 日付 Data AA 1 2008/1/1 10 AA 1 2008/1/2 11 AA 1 2008/1/3 12 AA 2 2008/1/4 13 AB 3 2008/1/5 14 AB 3 2008/1/6 15 AB 4 2008/1/7 16 この時に「IDと処理番号が一致した場合、日付の一番古い行を抜き出す」 という条件でデータの抽出をすることは可能でしょうか 結果は下記のようになります。 ID 処理番号 日付 Data AA 1 2008/1/1 10 AA 2 2008/1/4 13 AB 3 2008/1/5 14 AB 4 2008/1/7 16 下のような命令文を作ったのですが、 「Data列」が抜き出せません。 select ID,処理番号,min(日付) from テーブルA Group by ID,処理番号 一度上の命令文でテーブルを作って元のテーブルとマッチングさせるしかないのでしょうか?出来れば一発で抜き出したいです。 ご教授宜しくお願いします。
- ベストアンサー
- SQL Server
- 構造体配列の並べ替え
いつもお世話になっております。 VB6で構造体の配列をソートしたいと考えています。 具体的やりかたは調べたいと思うのですが、ヒントとしてひとつ教えてほしいことがありまして質問させていただきました。 たとえば 名前(string) 身長(integer) 体重(single) 何人分かを仮にprofileという名の構造体に入れて、普通の配列と同じ様に体重だけをソートしたとします。 すると体重だけがソートされてしまうのでしょうか? それとも構造体ごとソートされてくれるのでしょうか? 前者だとかなり悩むことになりそうなので、そこだけ教えていただきたく質問させていただきました。 よろしくお願いします。
- ベストアンサー
- Visual Basic
- 構造体配列
こんにちわ。VB.NET初心者です。伝授お願いします。 VB6では Type Tpn_Index IdxSu As Integer idx(MAXTPN-1) As Integer End Type と定義できますが、VB.netでは構造体の中の配列部分が定義できません。 どのように書けばよろしいでしょうか? Public Structure Tpn_Index Dim IdxSu As Integer Dim idx() As Integer End Structure 上記の Dim idx() As Integer の部分です 宜しくお願いします
- 締切済み
- Visual Basic
- 命名規則 VB 構造体
VBの構造体の命名はどうすればいいですか? strXXX as string intYYY as integer ???ZZZ as 構造体 udtZZZ as 構造体 でいいのでしょうか? ユーザー定義型ということでいいのでしょうか?
- ベストアンサー
- Visual Basic
- アクセスの集計について
アクセスのクエリで、伝票番号でグループ化し、その横に、商品番号を並べたいです。 ★元テーブル★(名前:商品テーブル) 伝票番号 商品番号 1163069 AA01232 1168453 AAAA674 1168453 BBBB916 1174348 AA04041 1174348 BB04045 1174348 CC04041 ★作りたい状態★ 伝票番号 新商品番号 1163069 AA01232 1168453 AAAA674、BBBB916 1174348 AA04041、BB04045、CC04041 ★現状★ 伝票番号 新商品番号 1163069 AA01232、AA01232 1168453 AAAA674、BBBB916 1174348 AA04041、CC04041 SQLは、 SELECT 商品テーブル.伝票番号, First([商品番号]) & "、" & Last([商品番号]) AS 新商品番号 FROM 商品テーブル GROUP BY 商品テーブル.伝票番号; です。 first、lastが別に使いたいわけじゃないのですが、 他に方法がわからなくて使いました。 しかし、これだと、2つまでしか表示できないし、1つのものも 2つ表示されてしまって困っています。 わかりにくい質問で申し訳ありませんが、教えてください(^^)
- ベストアンサー
- オフィス系ソフト
- インポートの際データが重複して読み込まれてしまう?
いつも質問ばかりですみません。 別ファイルからデータをインポートする際にどうやっても 変にインポートされてしまいます。 ※リスト形式で表示した下記ファイルがあります 合計6レコード (フィールド) (フィールド) (フィールド) 1.「A日付・7/12」「伝票番号・001」 「名前・Z」 2.「A日付・7/12」「伝票番号・002」 「名前・W」 3.「A日付・7/12」「伝票番号・003」 「名前・Y」 4.「A日付・7/13」「伝票番号・004」 「名前・FA」 5.「A日付・7/13」「伝票番号・005」 「名前・W」 6.「A日付・7/13」「伝票番号・006」 「名前・Y」 これを別ファイルにインポートすると (フィールド) (フィールド) (フィールド) 1.「A日付・7/12」「伝票番号・001」 「名前・Z」 2.「A日付・7/12」「伝票番号・002」 「名前・W」 3.「A日付・7/12」「伝票番号・003」 「名前・Y」 4.「A日付・7/13」「伝票番号・004」 「名前・FA」 5.「A日付・7/12」「伝票番号・002」 「名前・W」 6.「A日付・7/12」「伝票番号・003」 「名前・Y」 と「名前・W の 伝票番号・002」と「名前・Y の 伝票番号・003」が 重複してインポートされます。(レコードは6個です) さらに再度インポートすると、また重複してインポートされ 且つ、レコードは重複の2を含め、8個になってしまいます。 設定では現在の対象レコード内で一致するレコード更新 一致しないレコードを追加にチェックをしているのですが? つたない説明ですがどなたか回避する方法をご伝授下さい。 使用環境・Mac OS10.3 FM6です
- ベストアンサー
- その他(データベース)
- UPDATEで困っています
下記の2つの表があり、 表Aから伝票番号毎に集計したTAXで、 同じ伝票番号をもつ表BのTAXを、一括更新しようと考えています。 表Bについては、伝票番号の中で最小の明細番号の行のみ 更新しなければなりません。 SQL-SERVERでは、下記のSQLでどうやら大丈夫そうなのですが、 Oracleでは、更新どころかエラーが発生してしまい、 途方に暮れています。 どなたか、ご教授頂けないでしょうか? よろしくお願い致します。 update B set 税額 = AA.税額合計 from B inner join (select 伝票番号, min(明細番号) as 最小明細番号 from B group by 伝票番号) as BB on BB.伝票番号 = B.伝票番号 and BB.最小明細番号 = B.明細番号 inner join (select 伝票番号, sum(税額) as 税額合計 from A group by 伝票番号) as AA on AA.伝票番号 = B.伝票番号 (表A) ・伝票番号 ・明細番号 ・TAX (表B) ・伝票番号 ・明細番号 ・金額 ・TAX
- ベストアンサー
- Oracle
お礼
どうもありがとうございます。やってみましたが、やはりORDER BY句からでは無理なようです。伝票番号を優先すると、後の区分番号1と、区分番号2がバラバラになってしまいました。でも、ORDER BY句の中で列指定を並び替えるというのはとても参考になりました。別のプログラムで使わせていただきました。ありがとうございます。