當前位置:首頁 » 編程語言 » 報表sql條件語句
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

報表sql條件語句

發布時間: 2023-04-18 21:13:18

① C# 如何把一些水晶報表的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條件是循環得到主報表的某個欄位

select 產品 編碼
from 產品表
wherer len(編碼,1) = "2"

這樣的資料庫設計得擾拍很差,產品總得有個欄位,叫指迅產品類型吧,一個欄位能包括的信息是有限的,不要指望產品編碼緩逗羨能包含產品類別這個信息,就算能包括,也要建議一下類別的表,這樣查詢起來也快啊

③ U8自定義報表中的SQL語句解疑

表之間通過欄位關聯後加條件

④ sqlserver 統計報表的 sql語句怎麼寫


--動態語句
declare@sqlvarchar(8000)
select@sql=isnull(@sql+'],[','')+NAMEfromT_CSDN_ONEgroupbyNAME
set@sql='['+@sql+']'
EXEC('select*from(select*fromT_CSDN_ONE)apivot(SUM(ISNULL(MONERY,0)forNAMEin('+@sql+'))b')

⑤ 二維報表sql怎麼限制條件

我們在sql編寫中經常會碰到一些二維數表的情況,一個二維數表中每一個數據都有至少兩個條件的約束。
然後我們把數據拍慶粘虧派貼到excl中,通過數據透視表的方式進行處理:
1.首先我們選中數據范圍,點擊插入,選擇數據透視表,點擊確定。
2.我們把年限放到x軸,車間放到y軸,人數放入數據中,我們即銷賀賀可得到二維報表。

⑥ SQL語句製作報表

t1,t2,t3對應表123
列名用了拼音首字母代替,自己看下吧

SELECT isnull(t1.GG,isnull(t2.gg,t3.gg)) 規格,
isnull(SR,0) 收入,isnull(FC,0) 發出,isnull(jc,0) 結存
FROM
t1 full join t2
on t1.gg=t2.gg
full join t3
on t1.gg = t3.gg

⑦ sql語句中交叉報表的使用

DECLARE@sNVARCHAR(4000)
SELECT@s=ISNULL(@s+',','')+QUOTENAME(標志)
FROM表
---行列轉換
DECLARE@SQLNVARCHAR(4000)
SELECT@SQL='
SELECT*
FROM表(帶有轉換標志)PIVOT(SUM(實際需要欄位)
for[標志]in('+@s+')
)A'
EXEC(@SQL)

⑧ 報表統計連續三天或以上的記錄怎麼寫SQL語句

用你的where條件去控制啊,
思想如下:
select * from table where 星期一遲到了 and 星期二遲到了 and 星期三遲到了

⑨ 用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語句要結合你的表結構來適當調整表名、欄位、和關聯。
希望能幫到你!