A. 怎麼用sql語句創建視圖
1.打開sql server management studio,依次展開到視圖。
B. sql中建表時怎麼設置多個選擇值,不知道怎麼形容,就像下圖的職工類型,幾個選項的
使用CHECK約束
CHECK ( 職工類型 IN('在職','離職','退休') )
C. 怎麼在sql developer里創建表departments和employees啊
SQL 代碼如下use 資料庫名稱;gocreate table departments(id int,name varchar(25))gocreate table employees(id int,Name varchar(25),deptno int) ----------\\你可以直接在查詢分析器裡面執行上面的代碼, 或者把代碼寫成字元串使用 command 執行, 也可以. 另: 不知道你的表用來干嗎的, 看起來 只是測試用的吧, 表最好是要有主鍵, 還有 是否允許空值 等等, 一般的數據不是很重要的 可以設置 默認值. 這些都可以在以後的學習和使用中慢慢學會, 我也是初學者.養成良好的編碼習慣很重要,
D. sql 求解釋
CREATETRIGGERTag_HPersonInsupONdbo.HPerson---建立表dbo.HPerson的觸發器
FORINSERT,UPDATE----為insert/update觸發器,就是對表dbo.HPerson進行插入或更新時將觸發這個觸發器運行
AS
IF@@ROWCOUNT=0---@@ROWCOUNT為上一個操作的受影響或被讀取的行的數目,這里就是指對表dbo.HPerson進行操作所影響的行數
RETURN----如果沒有影響的行就退出此觸發活動,下面的操作就不會執行
SETNOCOUNTON----不返回受此觸發器語句影響的行數
DECLARE@Ide_CardVARCHAR(30),@v_countint,@Work_Statusvarchar(10)---定義三個變數,指定變數類型
SELECT@Ide_Card=Ide_Card,@Work_Status=Work_StatusFROMInserted---這里要說明這個Inserted,這是一個偽表,他的表結構和dbo.HPerson是一樣的,但是裡面存放的是insert操作所影響的數據行。將Inserted表中的Ide_Card和Work_Status欄位值賦值給變數@Ide_Card和@Work_Status
if@Work_Status='在職'andUPDATE(IDE_CARD)----如果變數@Work_Status等於'在職'並且監視的列IDE_CARD發生了變化,將執行下面的操作
begin
SELECT@v_count=count(*)----賦值給變數@v_count
FROMHRPersonExpel
whereEntry_Type=0and
SUBSTRing(CASEWHENLEN(idn)>14andLEN(idn)<17THENSUBSTRing(idn,1,6)+'19'+SUBSTRing(idn,7,9)ELSEidnEND,1,17)
=
SUBSTRing(CASEWHENLEN(@IDE_CARD)>14andLEN(@IDE_CARD)<17THENSUBSTRing(@IDE_CARD,1,6)+'19'+SUBSTRing(@IDE_CARD,7,9)ELSE@IDE_CARDEND,1,17);---這里就是sql語句啦,就不做說明了,不清楚的話看看sql基本
if@v_count>0---如果@v_count大於0的話,執行下面的語句
begin
RAISERROR('你好,此人為免職人員!!!!!!',16,1)---給出錯誤提示
ROLLBACKTRAN---這里做了事務回滾的操作
end
end
有問題再追問吧,望採納。
E. sql語句中在編人數如何根據系統當前部門崗位在職員工總數自動生成
用group by
select 部門, count(*) as 在編人數
from 人員表
group by 部門
其餘where條件,根據實際需求添加
F. 求在職人員sql語句
select ex.* from EX_SUB_BILLS ex
where to_char(ex.create_time, 'yyyy-MM-dd') >= '2017-04-30'
and to_char(ex.create_time, 'yyyy-MM-dd') <= '2017-06-01'
and ex.deliver_state='簽約'
個人意見:您這的在職狀態可以用標識來代替,比如 1:簽約;2:解約。
同時要注意時間的類型,我這里為String類型。
G. 如何使用sql生成一個狀態的列
你好,這個可行,非常謝謝你。再加上一個else '完畢',沒有的就顯示這個,呵呵
H. 如何用一條sql寫出 員工表的在職,離職員工總數
select 是否在職,count(1) as 人數 from 表名 group by 是否在職
I. SQL中用1表示在職,2表示離職,3表示實習,4表示兼職怎麼寫
存表裡就是1,2,3,4 啊 你說的是查詢的時候當查詢到1時顯示在職這個意思么,如果是的話用select case when zian ='1' then '在職' when zian ='2' then '離職' when zian ='3' then '實習' when zian ='4' then '兼職' else end as XXX from 表