-
看來標題id在這個統計中沒用,房東的意思就是不算,重覆記錄(方法)的數量,數字的名稱是動態新增的。
示例:表名(表)內容:
id 方法。
1 正確。 2 少 15 個。
3 少 10 個。
4 20 少。
5 正確。 6 20 少。
7 少 15 個。
8 正確。 9 20 少。
10 25 少。 輸出。
HJ 10 少 15 少 20 少 25 少正確。
共 1 2 3 1 3
如果是這種情況,可以使用交叉查詢來建立行和列轉換:
如下圖:transform max(
select
從 ( 選擇 [方式],"總"作為 hj,nz(count([way]),0) 作為 hj1
from table group by [mode] )as tabletmpgroup by
pivot tabletmp.方式;
-
declare @sql varchar(8000)set @sql = 'select '
select @sql = @sql + ', sum(case 方式 當'''方式; ''' then id else 0 end) ['方式; ']'
from(選擇與 tablename 不同的)作為
set @sql = @sql + '從分組依據模式'
exec(@sql)
-
選擇 sum(case way when.)'正確'那麼id else 0 end)是正確的,sum(case way when'10 以下'then id else 0 end) 10 less, sum(case way when'15 減'then id else 0 end) 15 少,sum(case way when'20 減'然後 id else 0 end) 少 20。
從表名。
-
這應該是房東的意思。
選擇 sum(case way when.)'正確'然後 1 else 0 end) correct, sum(case way when'10 以下'然後 1 else 0 結束) 10 少,sum(case 方式當'15 減'然後 1 else 0 end) 15 少,sum(case 方式當'20 減'然後 1 else 0 end) 少 20。
從表名。
-
-- 表中字段的名稱。
select name from syscolumns where id=object_id( '表名')
表中的字段數。
select count(name) from syscolumns where id=object_id( '表名')
最好將其更改為:object id(n'表名')
這只是一種規範,通常不會出錯。
select name from syscolumns where id=object_id(n '表名'--清單。
select name from sysobjects where xtype= 'u '表名
select name from sysobjects where xtype= 'p '--儲存過程。
-
方法 1:這需要一些儲存過程來實現。
這是總體思路。
1 遍歷表的列名。
2 將資料儲存在 Zero Time 的表 1 中。
3.根據列名迴圈的查詢,從零時表中檢查此列中是否有您想要的資料,如果有,則保留此資料。
4 檢測到的資料儲存在零時間表2中,並從零時間表中刪除15 零時間表2的內容是您想要的所有資料。
解釋每個步驟的要點。
1個遍歷詞舉個小例子。
從 syscolumns 中選擇 Name where id = object id('Table Name')。
2 略。 3 需要開啟乙個游標(這個網路上有很多)。
ps:如果欄位較少,你可以直接列出它們而不寫迴圈.4 是 3 的插入操作變成 delete5 來得到結果.
方法 2 通過示例進行說明。
例如,第一條記錄是 1、2、3、4
第二條記錄是 2,3
第三條記錄是 1
第四條記錄是 1,3
為每條記錄分配乙個標識詞。
建立乙個包含兩個欄位的零時間表:sysid columvalues,並分別插入每列的值和列的識別符號。
r1 1 等內容
r1 2r1 3
r1 4r2 2
r2 3r3 1
r4 1r4 3
然後查詢此表以獲取列值為 1 行識別符號的內容(向下顯示)。
然後。。 應該很清楚八:)
-
使用 charindex 函式:
a1="1"
sql="從資料表中選擇 * ,其中'"&a1&"'在(欄位名稱)中。"
進入 a1="1"
從資料表中選擇 * 其中欄位名稱
從資料表中選擇欄位名稱,其中charindex(a1,field name)>0
房東需要熟悉in語句的用法,否則將無法熟練正確地使用in語句。
-
sql="select * from datatable where fieldname like'*"&a1&"*'和欄位名稱:欄位名稱不像'*"&a1&"[0-9]*'"試試吧。
-
從表名中選擇*,其中欄位名稱如'%變數名稱%'
-
你**是對的,只需在末尾新增乙個臨時表名即可。
select * from (select tablename from a where id=1 ) temp
-
目前,理解範圍只能通過儲存過程來實現。
將 where id=1 中的 select tablename 的值指定給變數。
從下面的變數中選擇 *。
-
太難了,太大了! 確實如此!
-
select * from (select from a where where ..
A 是新錶的名稱,在獲取表 a 中的值時可以使用 或。
-
如果你不寫任何東西,語法不會通過,你可以在括號裡寫乙個預設值,比如 ('0')
-
是的,但意思不同。
-
您可以在 ('',' ','值 1')
只是意思不同。
驗證確認)。
-
。。如果你不寫任何東西,你可以找到乙個資料庫來驗證它。
已使用 sqlserver2000 驗證,如果不寫入就無法寫入。
1.喝蓮子湯以除火。
症狀:有虛虛和現實兩種症狀,虛火表現為低燒、盜汗、心煩意亂、口乾等; 真正的火表現為反覆的口腔潰瘍、口幹、尿短、易怒等。 >>>More