SQLServer 新增資料時觸發器自動計算並更新相關值
USE [Jiao]
GO
/****** Object: Trigger [dbo].[tri_ds_insert] Script Date: 01/14/2015 22:22:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[tri_ds_insert]
ON [dbo].[t_DynamicScore]
for INSERT
AS
BEGIN
--定義變數
declare @Teaching int,--教學總分
@Environmental int,--環境總分
@Cars int,--車輛總分
@Teacher int,--教練總分
@sumsum int,--評分總條數
@teacsum int,--對某位教練評論的總條數
@SchoolID varchar(50),--駕校ID
@TeacherID varchar(50);--教師ID
--在inserted表中查詢已經插入記錄資訊
select @SchoolID = SchoolID,@TeacherID = TeacherID from inserted;
--獲得教學總分
select @Teaching=SUM(Teaching) from t_DynamicScore where [email protected];
--環境總分
select @Environmental=SUM(Environmental) from t_DynamicScore where [email protected];
--車輛總分
select @Cars=SUM(Cars) from t_DynamicScore where [email protected];
--教練總分
select @Teacher=SUM(Teacher) from t_DynamicScore where [email protected] ;
--獲得教學打分的數量
select @sumsum=COUNT(id) from t_DynamicScore where [email protected];
--對某位教練評分的總條數
select @teacsum=COUNT(id) from t_DynamicScore where [email protected];
--除法,小數點後保留4位,為該駕校最新的教學DSR
update t_DSchool set Teaching=CONVERT(decimal(8,4),@Teaching*1.0000/@sumsum),--這裡乘以1.0000就為了得到的資料精確到小數點後4位
Environmental=CONVERT(decimal(8,4),@Environmental*1.0000/@sumsum),
Cars=CONVERT(decimal(8,4),@Cars*1.0000/@sumsum)
where [email protected];
update t_Teacher set DSR=CONVERT(decimal(8,4),@Teacher*1.0000/@teacsum) where [email protected];
END
相關推薦
SQLServer 新增資料時觸發器自動計算並更新相關值
USE [Jiao] GO /****** Object: Trigger [dbo].[tri_ds_insert] Script Date: 01/14/2015 22:22:35 ***
mysql中新增資料時,報錯(incorrect string value:'\xf0\x9f ) 字元轉換不正確
原因是UTF-8編碼有可能是兩個、三個、四個位元組。Emoji表情或者某些特殊字元是4個位元組,而Mysql的utf8編碼最多3個位元組,所以資料插不進去。 在網上搜了一下解決問題的方案,我選了一個方案解決了。 1.在mysql的安裝目錄下找到my.ini,作如下修改: [mys
【Java】解決Gson解析資料時int自動轉化為double問題
Gson可以將json字串轉換時, 原json字串中的int , long型的數字會預設被轉換成double型別 , 導致數字會多一個小數點 , 如 1 會轉成 1.0。 解決方法: 只需將Gson gson = new Gson();換成下面這個 Gson gson = n
Bootstrap Table清空資料後再新增資料時資料錯亂
function filterVave() { $("#table-vave").bootstrapTable('removeAll'); var selectedContent = $("#table-function").bootstrapTable('getSelections'); $
實現新增資料時,關聯其他類,比如新增商品時,需要商品型別,如何關聯這些型別
後臺: $detail是編輯時的模板資料 $yccart = D('Elecate')->where(array('cate_id' => $detail['cate_id'])) ->find(); $this->assign('yccart', $yccart
mybatis+oracle新增資料時如果資料存在就更新,如果不存在就插入
判斷需要插入的資料是否存在,如果不存在就更新 <insert id="saveBatch" parameterType="java.util.List" > MERGE INTO 表名 T USING ( <foreach collection=
jsp新增資料時,中文變問號
在hibernate.cfg.xml中新增 <property name="connection.useUnicode">true</property> <property name="connection.characterEncod
Java程式碼TkMyBatis通用Mapper中新增資料時同時獲取自增主鍵ID,與適用uuid 做主鍵時獲取 id
一 . MyBatis mapper.xml檔案中在xml 1. 加入 這句 :useGeneratedKeys="true" keyProperty="ID" keyProperty="資料庫中的主鍵欄位名對應的實體類欄位名" ;【填實體類欄位
SQL SERVER 儲存過程和事務(通過兩個值自動計算第三個值並更新)
SQL SERVER 儲存過程和事務 前提:再實際業務中,有一個需求,即是根據A欄位和B欄位計算C欄位(批量的)考慮用的事務和WHILE迴圈,做成儲存過程,然後作業,定時10分鐘更新一次。其中A欄位的值,又是根據其他4個欄位為一組求的平均值。 那麼該儲存過
oracle mybatis(Mergr into語句帶序列)新增資料時如果資料存在就更新,如果不存在就插入
merge語法根據源表(也可是臨時生成的表)對目標表進行查詢匹配,匹配成功時執行更新操作,不成功時執行插入操作。1.基本語法:merge into 目標表 Tusing 源表 T1on (T.xx1 = T1.xx1 and T.xx2=T1.xx2/*匹配條件*/)when
sqlserver新增資料的時候提示物件名‘updated’無效
sqlserver新增資料的時候提示物件名‘update’無效 原來自己在要修改的表中添加了一個觸發器: USE [XSCJ] GO /****** 物件: Trigger [dbo].[T1] 指令碼日期: 04/10/2011 16:25:05 ******/
vue實現動態新增資料滾動條自動滾動到底部
在使用vue實現聊天頁面的時候,聊天資料動態加到頁面中,需要實現滾動條也自動滾動到底部。這時我找到網上有個外掛 vue-chat-scroll 但是安裝後發現是用不了的,報錯資訊如下: VM14383:27 [Vue warn]: Failed
PHP 資料庫中某個欄位儲存的資料是陣列資料時,怎樣獲取並解析
當資料庫中某欄位儲存的資料是 陣列資料的時候 array ( 0 => array ( 'name' => 'xxx', '13fds' => '123123', 'dfsa' => '4444', 'fd
從資料庫中讀取資料,建立XML檔案並更新維護XML
public class OperateXML { /// <summary> /// 檔案全路徑 /// </summary> private string fullF
如何將儲存在資料庫表中的城市(部分帶市字,部分不帶市字),以此匹配到正確的省份(帶有市字),並更新相關的欄位資訊?
上述的問題實現的方式有很多,但是最好的實現方式應該如下: 1、新建省份表 CREATE TABLE `provincial` ( `pid` int(11) NOT NULL DEFAULT '0', `provincial` varchar(50) DEFAULT NULL,
thinkphp專案:前端介面中修改資料時自動新增selected 或者 checked
在做專案的時候,常常碰到寫修改頁面mod 的時候,前端介面中有些多項選擇checkbox或者單項選擇radio或者列表選擇select預設是要給他們自動新增被選擇狀態的。這個時候封裝一個自動選中函式就一勞永逸,很方便呼叫。 可以用純原生js來實現。我這裡是混合著Jquery寫的,必須先引入才
困擾已久——DataGridView控制元件填充資料時自動新增列
機房重構慢慢的走到了盡頭,最近正在進行最後的潤色中,今天解決了一個困擾許久但是非常簡單的問題。我們在查詢上機和充值記錄時,用到了DataGridView控制元件。我們在VB版的機房收費系統中也
以申購單為例項,講解Jquery動態刪減行,新增行新增滑鼠事件,子視窗與父視窗傳值,自動計算金額,及輸入值的驗證,前臺資料批量提交到後臺action
最近在為公司做一個小型ERP,其中有一個申購模組,公司需求大概:新建申購單,新建時新增要申購的物料資訊。輸入每樣物料的申購數量,預計價格,前臺自動計算總價。 設計需求大概:申購單應可以動態增減物料資訊。每條物料資訊應驗證不可重複。大概就是這些。本人剛剛畢業,參考網上資料後,
MySql資料庫插入一條資料時,create_time欄位自動新增為當前時間
有時候我們會有這樣的需求。往資料庫新增一條資料。然後表中有一個欄位是creat_time。新增資料的同時,這個欄位預設為當前時間。其實很簡單。設定欄位型別為timestamp。然後下面預設值填寫CURRENT_TIMESTAMP 下面那個根據當前時間戳更新 勾上。yes.搞定
TextBlock 重寫,當文本過長時,自動截斷文本並出現Tooltip
XML oca center res clr des glob ner edi 如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using