⑴ sql 一條記錄中 如何判斷多個欄位中的兩個欄位不為空
資料庫中空欄位分為
NULL ''
判斷是否為NULL時用 IS NULL
判斷是否為'' 用!=''
比如
select * from table where value !='';
select * from table where date IS NOT NULL;
⑵ 這個sql語句怎麼寫:統計出某個欄位里內容為空的數據有幾條
如果 ID 欄位是數字型,則用:select count(id) from A where id is null or id=0
如果是字元型,則是:select count(id) from A where id is null or id=''
沒有輸入過內容的是 Null。但輸入過內容再清空的,就是 0 或空了。
⑶ SQL中如何用select 語句查詢統計多個非空列欄位的數量
select'列1'as列名,count(*)as數量from表1where列1isnull
unionall
select'列2'as列名,count(*)as數量from表1where列2isnull
unionall
select'列3'as列名,count(*)as數量from表1where列3isnull
這樣?還有,你用的什麼資料庫
⑷ sql如何進行多個欄位的統計個數
一種查詢SQL如下, 利用union獲得b和c各自的統計結果, 然後再一次統計整合到最終結果:
selectsum(d.b_cnt)+sum(d.c_cnt)astotal_cnt,sum(d.b_cnt)asb_cnt,casewhensum(d.b_cnt)=0then''elsed.valendasb_label,sum(d.c_cnt)asc_cnt,casewhensum(d.c_cnt)=0then''elsed.valendasc_labelfrom(selectbasval,count(b)asb_cnt,0asc_,0,count(c)asc_cntfromAgroupbyc)dgroupbyd.valSQLSerer上的測試結果(欄位次序有變化),
total_cnt為總數, b_label為b欄值, b_cnt為b欄個數, c_labe為c欄值, c_cnt為c欄個數.
這個結果跟欄位是否為整型無關, 它是統計記錄出現的次數.
⑸ sql查詢 兩個欄位 至少其中一個不為空的結果集
select * from 表 where (性別 is not null AND 年齡 is null ) OR (年齡 is not null AND 性別 is null)
這樣呢?
⑹ 求sql代碼:欄位不為空時,去除欄位數據中某個字
UPDATE AAA SET BBB= REPLACE(BBB '靈活性,'') where bbb like '%靈活性%' and bbb is not null
樓上正解。。。我這後面的是多餘的。。。
⑺ sql語句如何統計2個表中多個欄位不為空的總記錄數
select count(a.*) from a b
where a.a1=b.b1 and (a.a2 is not NULL) and (a.a3 is not NULL) and
(b.b2 is not NULL) and (b.b3 is not NULL) .....
⑻ 資料庫SQL語句查詢表中不為空的欄位的數量為5的SQL語句
猜測:數量為表中的某一列
例如:查詢 a 的值不為空,數量=5
select A FROM TABLE WHERE (A IS NOT NULL OR A <> '') AND 數量 = 5
⑼ 關於sql查詢語句,由於表欄位較多,很多欄位為空值,查詢數據內容最多的數據
單純用SQL語句,題主這個問題應該沒有更簡便的解決辦法,只能一個一個欄位地進行判斷,然後再選出有最多非空欄位的記錄。例如下列SQL語句:
select a.* from
(select *,
case col_1 is null then 0 else 1 end +
case col_2 is null then 0 else 1 end +
...... +
case col_n is null then 0 else 1 end as vals
from t1) a,
(select max(vals) as max_vals from (select
case col_1 is null then 0 else 1 end +
case col_2 is null then 0 else 1 end +
...... +
case col_n is null then 0 else 1 end as vals
from t1)) b
where a.vals=b.max_vals;
可見SQL語句的確是比較繁瑣,單用SQL解決只能這樣了。如果可能,建議添加一個欄位專門記錄每行記錄有多少個非空欄位數,這樣要查詢擁有最多非空欄位的記錄時就會方便許多。
還可以考慮創建一個可以計算出每行記錄的非空欄位數的自定義函數,然後在SQL語句里引用該函數,選擇返回值最大的記錄就行了,這樣相關SQL語句可被簡化。當然編寫這個自定義函數是要用一些腦筋的。