報表查詢sql
① 用sql語句怎樣查詢匯出匯款統計報表的查詢
#必須指明表結構
SELECT*FROMtb_name
#使用子查詢
SELECT*FROM(SELECT*FROMtb_nameWHEREcondition)WHEREcondition
#高遲灶級查詢
#A:UNION運算符
#UNION運算符通過組合其他兩個結果表(例如TABLE1和TABLE2)並消去表中任何重復行而派生出一個棚喊結果表。當ALL隨UNION一起使用時(即UNIONALL),不消除重復行。兩種情況下,派生表的每一行不是來自TABLE1就是來自TABLE2。
#B:EXCEPT運算符
#EXCEPT運算符通過包括所有在TABLE1中但不在TABLE2中的行並消除所有重復行而派生出一個結果表。當ALL隨EXCEPT一起使用時(EXCEPTALL),不消除重復行
#C:INTERSECT運算符
#INTERSECT運算符通過只包括TABLE1和TABLE2中都有的行並消除所有重復行而派生出一個結果表。當ALL隨INTERSECT一起使用時(INTERSECTALL),不消除重復行。
#註:使用運算詞的幾個查詢結果行必須是一致的。
#外連接
#A、leftouterjoin:
#左外連接(左連接):結果集既包括連接表的匹配行,也包括左連接表的所有行。
#B:rightouterjoin:
#右外連接(右連接):結果集既包括連接表的匹配連接行,也包括右連接表的所有行。
#C:full鏈旦野outerjoin:
#全外連接:不僅包括符號連接表的匹配行,還包括兩個連接表中的所有記錄。
② 如何在報表預覽情況下,查看sql語句
SQL 創建工具:視覺化 SQL 創建工具創建和編輯查詢或視圖,不必擔心語法和配察正確命令的用法。選擇需要在表中執行的操作,自動編寫 SQL 語句。
關於預覽工具的使用,在Navicat官網有比較詳細的說明。
Navicat for MySQL 如何預覽報表
Navicat for MySQL 預覽選項卡包含所呈現的報表。預覽表單可以使用戶控制及查看報表輸出。一個頁節點的大綱顯示在表單的左邊,在頁面查看器旁邊。使用「列印」按鈕可傳送報表輸和蘆出到列印機或到一個培棚茄輸出文件,例如 PDF。
創建「搜索報表」,在「查詢設計器」啟用「自動搜索」選項,如下圖所示。
點擊「搜索數據」圖標來輸入搜索准則,如下圖所示。
關於預覽列印:
預覽和列印模型
Navicat for MySQL 要預覽列印前的頁面,點擊「預覽列印」按鈕,該模型可以列印到列印機或各種文件格式。
③ 怎麼查詢SQL資料庫的歷史數據,並調用出來做報表
SQL關鍵字 where,類型轉換Convert
歷史數據,多久後的數據,假如有表A,有2個欄位a,b
a 為int 類型,b 為日期類型
轉換日期以及日期范圍SQL 如下:
select * from A where b between convert(datetime,'2015-08-01 08:08:08' ) and convert(datetime,'2015-08-01 08:12:08')
以上SQL 就是查詢歷史記錄,日期為'2015-08-01 08:08:08'與 '2015-08-01 08:12:08'
之間的數據
創建報表可以通過MicrosoftSQLServer2008R2中的創建,也可以在Microsoftvisualstudio中通過使用ReportView控制項來創建報表。本實例採用MicrosoftSQLServer2008R2中的創建報表。
創建報表伺服器項目
在製作報表之前,要先創建一個報表伺服器項目,在其中可以存放若干報表供用戶調用。在中創建報表伺服器項目的操作步驟如下。
選擇【開始】|【所有程序】|【MicrosoftSQLServer2008R2】|【】,啟動商業智能開發環境。在菜單欄中選擇【文件】|【新建】|【項目】命令,彈出【新建項目】對話框。在【項目類型】列表中選擇【商業智能項目】選項,在【模板】列表中選擇【報表伺服器項目向導】選項,在【名稱】文本框中輸入【報表項目4】,單擊【確定】按鈕以創建項目。
④ 如何查看一個SCCM報表的SQL語句
可以通過count函數來實現。
sqlOne:select * from tablename1 where id>5;此語句查詢出來清宴逗多條記錄,之後看做一個新的表。
sqlTwo:select conut(*) from (select * from tablename1 where id>5) as tablename2;此語句即可查詢出來統祥游計的記錄條數。
備註:以答賣上方法通用於所有的數據統計,如果是單表查詢,可以直接通過:「select count( *) from tablename1 where id>5"的形式查詢出結果。
⑤ 用SQL查詢報表
#我看了你的描述,也沒給出表與表之間的關系和欄位,以我的理解後,寫出以下sql語句,經過測試,可以執行成功
#FeeTable:生活費表包含(學生信息表)也就是外鍵
#Student:學生信息表包含(班級信息表)也就是外鍵
#Greade:班級信息表
select
s.nameas學生名稱,
g.nameas班級名稱,
s.genderas學生性別,
s.teacheras招生老師,
f.liveFeeDateas生活費日期,
f.liveFeeas生活費,
f.sleepFeeDateas住宿費日期,
f.sleepFeeas住宿費,
fareFeeDateas校車費日期,
fareFeeas校車費,
(f.liveFee+f.sleepFee+fareFee)as費用合計
.id=f.studentinnerjoinGreadegons.greade=g.id
groupbys.name,g.name,s.gender,s.teacher,f.liveFeeDate,f.liveFee,f.sleepFeeDate,f.sleepFee,fareFeeDate,fareFee
以上SQL語句要結合你的表結構來適當調整表名、欄位、和關聯。
希望能幫到你!
⑥ 如何在水晶報表中實現SQL 查詢
給你一個例子 基本可以傳遞參數 到水晶報表 可以查詢 並且可以將參數欄位顯示為你需要的值
以前採用vb6做的動態傳遞水晶報表參數欄位,存在一個缺陷就是在設計水晶報表的時候沒有按照注釋的那裡寫的(直接拖參數欄位到預覽的界面)就不會出現水晶報表提示要輸入離散值的消息框。其實也不完全是這樣的,有時我按照這種方式操作仍然有這個輸入離散值消息框的提示,具體是什麼原因造成的還不是很清楚,估計開發水晶報表的明白內部機制的友擾原因,我只想能順暢的使用就可以了,可出現不相關的輸入提示就直接影響到客戶使用程序。
我在做DotNet2005時用的是水晶報表10,在傳遞參數後。有加入了設置顯示報表控制項的參數對象集合為傳遞的參數值【CRViewer91.ParameterFieldInfo = m_Report.ParameterFields 】運行程序就沒有這個輸入離散值的提示。vb6使用水晶報表9.0不知道加入這個設置是否能解決問題。暫時我還沒有條件測試主要是計算機上沒有安裝水晶報表9,不過也是一種解決這個問題的辦法嘩螞。先在這里保存起來,待有條件了測試下,沒有這條語句可能在設計報表rpt文件的時候和程序動態調用可就要來亂告埋回的測試了 。 哈~~~~~~
Private Sub DisplayReport1()
'' ==========================================================
' 開發人員:段利慶
' 編寫時間:2008-09-01
' 過程名稱:DisplayReport
' 參數說明:
' 功能說明:動態載入水晶報表文件(*.rpt)顯示列印預覽
'
' 其他說明:程序採用的是Crystal Reports 9.1版本
' 工程引用:Crystal Reports 9 ActiveX Designer Design and Runtime Library
' 控制項:CRViewer91
'
'
'' ==========================================================
'*中央錯誤處理
On Error GoTo PROC_ERR
Dim m_Application As New CRAXDDRT.Application
Dim m_Report As CRAXDDRT.Report
Dim strSQL As String
strSQL = "SELECT * FROM 視圖_收費_計量儀表 "
Dim strRptPath As String
strRptPath = App.Path & "\Crystal_RPT_Para\Sell_Meter.rpt"
Debug.Print "strRptPath:" & strRptPath
Set m_Report = Nothing
Set m_Report = m_Application.OpenReport(strRptPath, 1)
'*防止彈出水晶報表資料庫登錄對話框
m_Report.Database.Tables.Item(1).TestConnectivity
m_Report.Database.Tables.Item(1).ConnectBufferString = objdata.ConnectionString
m_Report.SQLQueryString = strSQL
'****************************************************
'*參數欄位傳遞參數
'*
'*搞了2天了終於找到原因了 08-09-03
'*1.在新建一個參數欄位,一定要直接拖放到預覽裡面
'* 否則拖到設計裡面就要彈出輸入離散值的消息框
'*
'*2.GetItemByName("MyParaT") 參數是參數欄位的名稱
'*
m_Report.DiscardSavedData
m_Report.ParameterFields.GetItemByName("MyParaT").ClearCurrentValueAndRange
m_Report.ParameterFields.GetItemByName("MyParaT").AddCurrentValue (Text1.Text)
m_Report.ParameterFields.GetItemByName("k1").ClearCurrentValueAndRange
m_Report.ParameterFields.GetItemByName("k1").AddCurrentValue (Text1.Text)
m_Report.ParameterFields.GetItemByName("k2").ClearCurrentValueAndRange
m_Report.ParameterFields.GetItemByName("k2").AddCurrentValue (Text1.Text)
'*-----------------------------------------------------
'* 以下這句是否能徹底解決彈出離散值輸入框問題
'*是根據vb2005 Crystal Report10 順暢的處理結果得出的
'*2009-08-26
'CRViewer91.ParameterFieldInfo = m_Report.ParameterFields
'*傳遞的對象 用下面的語句
'*Set CRViewer91.ParameterFieldInfo = m_Report.ParameterFields
'*-----------------------------------------------------
'****************************************************
CRViewer91.DisplayGroupTree = False
CRViewer91.ReportSource = m_Report
CRViewer91.Zoom 1
CRViewer91.ViewReport
'*結束子程序
PROC_EXIT:
Exit Sub
'*錯誤處理,顯示出錯信息
PROC_ERR:
MsgBox " ErrNumber: " & Err.Number & vbCrLf & _
"ErrDescription: " & Err.Description & vbCrLf & _
" Mole: " & Me.Caption & vbCrLf & _
" Procere: " & "DisplayReport"
GoTo PROC_EXIT
End Sub
⑦ 如何用sql查詢獲取表得信息
問題:
1、怎樣讀取access系統表msysobject?
2、如何從系統表中獲取用戶表的表結構信息,包括有哪些用戶表以及各表的欄位信息(欄位名、類型、長度、是否允許為空,等等)、主外鍵約束等。
3、如何用sql查詢獲取表得信息,包括有哪些用戶表以及各表的欄位信息(欄位名、類型、長度、是否允許為空,等等)、主外鍵約束等。
答案:
1、請參考access911以下文章《新手必看:如何才能操作名為MSysObjects的表?》
http://access911.net/index.asp?board=4&mode=3&recordid=71FAB11E11DC
2、access可以供通過查詢系統表msysobject得到系統中所有表的表名以及表的類型,但無法叢搏得到表的信息,包括表的欄位信息(欄位名、類型、長度、是否允許為空,等等)、主外鍵約束等。
你可以參考滲宴祥access911以下文章:
祥早《怎樣使用一個查詢獲得資料庫對象的名稱(查詢/窗體/表/報表/模塊/宏)?》
http://access911.net/index.asp?board=4&mode=3&recordid=71FAB71E12DC
《ado如何取得表的所有欄位信息?》
http://access911.net/index.asp?board=4&mode=3&recordid=74FAB11E10DC
3、到目前為止(access XP),直接通過 jet sql 來查詢表名可以,但無法得到表的信息包括表的欄位信息(欄位名、類型、長度、是否允許為空,等等)、主外鍵約束等。
⑧ SQL開發報表設置查詢條件
SQL 語句只是對資料庫進行操作,與用戶的交互操作很少,比如窗口、按鈕、下拉菜單等等控制項。
所以資料庫應用程序開發,還需要一門程序數據語言配合資料庫開發。比如C++,PB等等。
⑨ excel使用sql語句查詢功能.
在宏編輯界面中進行SQL數據查詢以及生成報表的代碼如下:
Sub Static()
Dim objNewWorkbook As Workbook '定義一個Workbook對象
Set objNewWorkbook = Workbooks.Add(ThisWorkbook.Path & "模板.xlt") '使用模板文件新建一個EXCEL報表生成文件
Set objConnection = CreateObject("ADODB.Connection") '創建一個ADO連接
objConnection.Open "Provider=Microsoft.Jet.Oledb.4.0;Extended Properties='Excel 8.0;Hdr=yes;Imex=1';Data Source=" & ThisWorkbook.FullName '設置連接字元串
strCommand = "select 施工人, count(*) as 拆電話 from [" & Sheet1.Name & "$] where 施工動作 = '拆' and 專業類型 = '電話' group by 施工人" '查詢表單一中的數據源進行統計
?objNewWorkbook.Sheets(1).Range("A3").CopyFromRecordset objConnection.Execute(strCommand)
2.將查詢統計結果輸出到目的報表文件的表單1的從A3開始的區域中
3.下面代碼是調用EXCEL的排序方式進行漢字排序,這里SQL語句中的排序對於漢字排序與期望結果不同
4.使用EXCEL中的排序方法是根據EXCEL版本不同調用有所區別
Select Case Application.Version
Case "11.0":
objNewWorkbook.Sheets(1).Range("A3:M" & CStr(intSumRow - 1)).Sort Key1:=objNewWorkbook.Sheets(1).Range("A3"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlPinYin, DataOption1:=xlSortNormal
Case "12.0":
objNewWorkbook.Sheets(1).Sort.SortFields.Clear
objNewWorkbook.Sheets(1).Sort.SortFields.Add Key:=Range("A3:A" & CStr(intSumRow - 1)), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With objNewWorkbook.Sheets(1).Sort
.SetRange Range("A2:M" & CStr(intSumRow - 1))
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Case Else
End Select
objConnection.Close
End Sub
⑩ 如何運用SQL進行雙向表頭報表查詢
可以先將原始數據按照存款的區間和類別進行一次分組:SELECT TYPE, CASE WHEN BAL < 50000 THEN '5萬元以下'WHEN BAL BETWEEN 50001 AND 100000 THEN '5-10萬'WHEN BAL BETWEEN 100001 AND 200000 THEN '10-20萬'WHEN BAL BETWEEN 200001 AND 300000 THEN '20-30萬'WHEN BAL BETWEEN 300001 AND 400000 THEN '30-40萬'WHEN BAL BETWEEN 400001 AND 500000 THEN '40-50萬'WHEN BAL > 500000 THEN '50萬以上'END AS BAL_RANGE,BAL, AGE, COUNT(*) COUNT_B FROM C_CUST_AGE WHERE DEPT_ID = ? AND TYPE = ? GROUP BY TYPE, AGE, BAL