• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:横並び表記について)

横並び表記について

このQ&Aのポイント
  • 横に表示するためのテーブルがidが飛んでも詰める形になる方法
  • 解決するためのsql構文
  • 要約文の内容のまとめ

質問者が選んだベストアンサー

  • ベストアンサー
  • jamshid6
  • ベストアンサー率88% (591/669)
回答No.2

No.1です。 Accessと認識しつつもAccess以外の関数を使っていました。 訂正いたします。 SELECT Max(IIf((nid Mod 3)=1,id,Null)), Max(IIf((nid Mod 3)=1,name,Null)), Max(IIf((nid Mod 3)=2,id,Null)), Max(IIf((nid Mod 3)=2,name,Null)), Max(IIf((nid Mod 3)=0,id,Null)), Max(IIf((nid Mod 3)=0,name,Null)) FROM (SELECT (SELECT COUNT(*) FROM tb1 WHERE ID<=a1.ID) AS nid, id, name FROM tb1 AS a1) AS a GROUP BY Int((nid-1)/3);

ara101
質問者

お礼

ご連絡が遅くなってしまい申し訳ございません!! こちらで抽出できました!! ありがとうございました!!

その他の回答 (1)

  • jamshid6
  • ベストアンサー率88% (591/669)
回答No.1

idがユニークな項目だとすれば、それを元に抜けのない連番を作ることになります。たとえば以下のように。 SELECT MAX(IIF((nid % 3)=1,id,NULL)), MAX(IIF((nid % 3)=1,name,NULL)), MAX(IIF((nid % 3)=2,id,NULL)), MAX(IIF((nid % 3)=2,name,NULL)), MAX(IIF((nid % 3)=0,id,NULL)), MAX(IIF((nid % 3)=0,name,NULL)) FROM (SELECT (SELECT COUNT(*) FROM tb1 WHERE ID<=a1.ID) nid, id,name FROM tb1 a1) a GROUP BY INT((nid-1)/3)

関連するQ&A