① sql中如果數值小於0給設置成0怎麼寫
Alter Table 表名
add Constraint 約束名 check(STOCK_WAY>=0)
建完約束後 在設計表中將STOCK_WAY欄位的默認值設為0
② 如果把資料庫中的某一列數值大於50的輸出1小於50的輸出0用什麼sql語句例如成績表,我用sql
select case when 成績>50 then 1
when 成績<=50 then 0 end
from test
③ 在sql 2008,一列值不允許null值為0怎麼辦
兩個方面
一個是非空選項的設置(如果是新建表並且用界面端建表的話 直接有選項卡勾選的)
點開 庫==》表==》【要修改的表名稱】==》列==》要求改的列點擊右鍵==》選擇修改按鈕
+ 設置約束
alter table 表名 with nocheck
add constraint 約束名 check(數量 <> 0)
一個是 前端開發代碼檢測替換
④ 在SQL中,如何將一個欄位拆分為兩個欄位顯示,拆分後的內容分別顯示原欄位大於0、小於0的值。跪求
select
casewhenA>0thenAelsenullendasA1
,casewhenA<0thenAelsenullendasA2
from
表名
⑤ sql server 2008 怎麼讓表中一列中的值為零
在「SQL Server Management Studio」中,用SQL語句處理。
1、先選中你要操作的表所在資料庫打開,或使用 Use 語句:
use 資料庫名
2、再點按「新建查詢」
3、更新數據:
如果該欄位是數值型
update 表 set 欄位 = 0
如果該欄位是字元型
update 表 SET 欄位名='0'
4、注意改完後要再改回去就沒得搞了,除非你先備份了該表。
⑥ sql語句查詢表中一個欄位的值小於另一個欄位的值怎麼寫
直接寫就行啊,比如 where dnum<alldnum
這樣語句就會一行一行的比較,當這一行的dnum值小於這一行的alldnum值時就會輸出。
⑦ SQL中規定某列值只能是0或者1的約束該怎麼寫
SQL CHECK約束。
CHECK約束用於限制列中的值的范圍。
如果對單個列定義CHECK約束,那麼該列只允許特定的值。
如果對一個表定義CHECK約束,那麼此約束會在特定的列中對值進行限制。
--刪除表
drop table temp;
--創建表
CREATE TABLE temp (flag NUMBER(1));
--增加約束
ALTER TABLE tempADDCONSTRAINTck_temp_flag CHECK
(flag=1 or flag=0);
--測試效果版
insert into temp values(1);
insert into temp values(0);
insert into temp values(1);
--測試效果(約束禁止插入數據),提示權:違反檢查約束條件
insert into temp values(2);
insert into temp values(3);
SQL CHECK Constraint on CREATE TABLE。
下面的SQL在"Persons"表創建時為"Id_P"列創建CHECK約束。CHECK約束規定"Id_P"列必須只包含大於0的整數。
My SQL:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (Id_P>0)
)
(7)sql一列的值小於零擴展閱讀:
不同資料庫的約束寫法:
SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
Id_P int NOT NULLCHECK (Id_P>0),
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
如果需要命名CHECK約束,以及為多個列定義CHECK約束,請使用下面的SQL語法:
MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes')
)
SQL CHECK Constraint on ALTER TABLE.
如果在表已存在的情況下為"Id_P"列創建CHECK約束,請使用下面的SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CHECK (Id_P>0)
如果需要命名CHECK約束,以及為多個列定義CHECK約束,請使用下面的SQL語法:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes')
撤銷CHECK約束。
如需撤銷CHECK約束,請使用下面的SQL:
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT chk_Person
⑧ 如何規定sql2000資料庫表裡某一列不為零
方法1、在企業管理器設計數據表時,設計欄位的默認值為1或其他;
方法2、在頁面中設計檢測,如果存儲這個欄位的值為0,重新輸入這個欄位的值。
⑨ sql語句某列求均值 如何忽略其中值為零的 例如1,2,0,3,4隻對1,2,3,4求平均
select avg(列) from 表 where 列<>0
加上條件就行啦。
⑩ sql中如何用語句實現每個列的初值都是0
ALTER TABLE 表 ADD CONSTRAINT 約束名稱 DEFAULT 默認值 FOR 欄位
--------------------
批量修改:
只需把 set @table = '模擬表'改成你的表名後執行,就可以把表中所有數字類型欄位初始值改成0
declare @table varchar(255)
declare @sql varchar(8000),@linkword varchar(10)
set @table = '模擬表'
set @sql = ''
select @linkword = case when @linkword is null then '' else '; ' end,@sql = @sql + @linkword + 'ALTER TABLE dbo.'+@table
+' ADD CONSTRAINT DF_'+@table+'_'+col+' DEFAULT 0 FOR '+col
from(
select c.name as col
from syscolumns c join systypes t
on c.xtype=t.xtype
where (t.name like '%int%' or t.name in('decimal','numeric','float','real') or t.name like '%money%') and c.id=object_id(@table)) colname
exec(@sql)