0
select 
  source_of_data,
  convert(varchar(10),a.DATECREATED,101),
  COUNT(*)
from some_table a
group by
  source_of_data, 
  convert(varchar(10),a.DATECREATED,101)
order by 
  source_of_data,
  convert(varchar(10),a.DATECREATED,101)

出力データは次のようになります。

mainframe 4/5/11  22
mainframe 4/6/11  45
mainframe n/n/nn  nn
sqlserver 4/5/11  44
sqlserver 4/6/11  67
sqlserver n/n/nn  nn

しかし、出力を次のようにしたい:

mainframe 4/5/11  22
sqlserver 4/5/11  44
mainframe 4/6/11  45
sqlserver 4/6/11  67
mainframe n/n/nn  nn
sqlserver n/n/nn  nn

このようにして、特定の日付のグループ化されたエントリが欠落しているかどうかを視覚的に簡単に確認できます。たとえば、ある日、メインフレーム データを取得しても sqlserver データが欠落しているとします。目的を達成するためにストアド プロシージャを作成する必要がないように、誰かがクエリの変更を手伝ってくれませんか?

4

2 に答える 2

0

これを試してみてください

  select 
      source_of_data,
      convert(varchar(10),a.DATECREATED,101),
      COUNT(*)
    from some_table a
    group by
      source_of_data, 
      convert(varchar(10),a.DATECREATED,101)
    order by 
     COUNT(*)
于 2012-07-31T13:13:46.727 に答える
0

私の理解が正しければ、注文を次のように切り替えてください

convert(Date, a.DATECREATED,101), source_of_data

その後、あなたの結果はあなたが説明したように出てくるはずです

編集: varchar に変換すると、期待どおりに動作しません。DATE型に変換します。

于 2012-07-18T17:47:36.907 に答える