① T-sql如何寫年齡的約束
明天的是對的
select * from table where age> 15and id<40這個是查找一張表裡面的ID小於40年齡小於15的
② SQL 根據學生的年齡范圍顯示相應信息:小於20歲的顯示"年齡較小"大於或等於20歲且小於24歲的
假設學生表Student,年齡欄位Age int
select case when Age<20 then '年齡較小' when Age>=20 and age<24 then '年齡適中' else '年齡偏大' end Memo from Student
③ sql中定義年齡用什麼數據類型,長度為多少
sql中定義年齡可以用的用數據類型及長度:
1、char(3):長度為3的字元串。小於10位且長度基本固定的字元串用char。
2、varchar(3):長度為3的字元串。長度大於10的用varchar,varcha在10以內佔用空間比char大。
3、int:長度為4個位元組,存儲從(-2147483648)到(2147483647)。
4、Smallint:長度為2個位元組,存儲從-32768到32767。
5、tinyint:長度為1個位元組,存儲0到255的數字。
(3)sql年齡規定擴展閱讀:
sql函數
UCASE(c)將某個域轉換為大寫
LCASE(c)將某個域轉換為小寫
MID(c,start[,end])從某個文本域提取字元
LEN(c)返回某個文本域的長度
INSTR(c,char)返回在某個文本域中指定字元的數值位置
LEFT(c,number_of_char)返回某個被請求的文本域的左側部分
ROUND(c,decimals)對某個數值域進行指定小數位數的四捨五入
④ sql 計算年齡
用getdate()獲得今天的日期,再用datediff算的年數
也可以直接取年份相減啊
⑤ db2 sql 怎麼樣 根據出生日期計算年齡
Transact-SQL 參考
DATEDIFF
返回跨兩個指定日期的日期和時間邊界數。
語法
DATEDIFF ( datepart , startdate , enddate )
參數
datepart
是規定了應在日期的哪一部分計算差額的參數。下表列出了 Microsoft® SQL Server™ 識別的日期部分和縮寫。
日期部分 縮寫
year yy, yyyy
quarter qq, q
Month mm, m
dayofyear dy, y
Day dd, d
Week wk, ww
Hour hh
minute mi, n
second ss, s
millisecond ms
startdate
是計算的開始日期。startdate 是返回 datetime 或 smalldatetime 值或日期格式字元串的表達式。
因為 smalldatetime 只精確到分鍾,所以當用 smalldatetime 值時,秒和毫秒總是 0。
如果您只指定年份的最後兩位數字,則小於或等於 "兩位數年份截止期 "配置選項的值的最後兩位數字的數字所在世紀與截止年所在世紀相同。大於該選項的值的最後兩位數字的數字所在世紀為截止年所在世紀的前一個世紀。例如,如果 two digit year cutoff 為 2049(默認),則 49 被解釋為 2049,2050 被解釋為 1950。為避免模糊,請使用四位數的年份。
有關時間值指定的更多信息,請參見時間格式。有關日期指定的更多信息,請參見 datetime 和 smalldatetime。
enddate
是計算的終止日期。enddate 是返回 datetime 或 smalldatetime 值或日期格式字元串的表達式。
返回類型
integer
注釋
startdate 是從 enddate 減去。如果 startdate 比 enddate 晚,返回負值。
當結果超出整數值范圍,DATEDIFF 產生錯誤。對於毫秒,最大數是 24 天 20 小時 31 分鍾零 23.647 秒。對於秒,最大數是 68 年。
計算跨分鍾、秒和毫秒這些邊界的方法,使得 DATEDIFF 給出的結果在全部數據類型中是一致的。結果是帶正負號的整數值,其等於跨第一個和第二個日期間的 datepart 邊界數。例如,在 1 月 4 日(星期日)和 1 月 11 日(星期日)之間的星期數是 1。
示例
此示例確定在 pubs 資料庫中標題發布日期和當前日期間的天數。
USE pubs
GO
SELECT DATEDIFF(day, pubdate, getdate()) AS no_of_days
FROM titles
GO
select datediff(year,EMP_BIRTHDAY,getdate()) as '年齡' from 表名
⑥ 用SQL創建表限制年齡 怎麼限制
sage int check(sage between 15 and 30)
⑦ sql sever中 在年齡上加檢查約束,使「年齡」欄位只能輸入數字
sql server企業管理器中,定義Check約束,在約束表達式中加上你自定義的約束條件,比如:age >= 18 AND age <= 100
⑧ sql語句年齡<>18是什麼意思
SQL語句中「<>」和「!=」一樣都是代表不等於的意思,在表示年齡的查詢語句中<>18的意思就是不等於18歲。
⑨ sql server 年齡約束問題
CreateTable<表名>
(
...
ageDateTime,
...
ConstraintchkAgeCheck(DateDiff('yy',GateDate(),age)Between1And40)
)
⑩ SQL語句如何根據出生日期計算年齡
第一種:
一張人員信息表裡有一人生日(Birthday)列,跟據這個列,算出該人員的年齡
datediff(year,birthday,getdate())
例:birthday = '2003-3-8'
getDate()= '2008-7-7'
結果為:5
這樣結果是會返回該人員的大概年齡,但不精確.不會精確到月或日.
按照上面測試的日期,該人員的實際年齡應該還不滿5歲。在需要精確年齡的時候,就會有錯.
第二種:
FLOOR(datediff(DY,birthday,getdate())/365.25)
FLOOR函數:
FLOOR(expr) 返回小於或等於expr的最大整數.FLOOR(1.1)返回1,FLOOR(-1.1)返回-2,FLOOR(1)返回1
這樣就可以精確算出,該人員當前實際年齡了.
測試:
birthday = '2000-7-8'
getdate()= '2007-7-7'
算出結果為:6
在Oracle中,要獲得日期中的年份,例如把sysdate中的年份取出來。
一種常用的方法是:to_number(to_char(sysdate,'yyyy'))
還有一種更好的方法,那就是使用oracle提供的Extract函數,使用方法是:
extract(year from sysdate) ,此方法獲得的結果是數值型的 ,這種方法省掉了類型轉換,更加簡潔。
相應的,要取得月份或日,可以用extract (month from sysdate) 和extract (day from sysdate)