小编Ste*_*han的帖子

Sqlite中的TSQL“IF @@Rowcount > 0”模拟?

我有 t-sql 插入查询到表 [foo] (bar_id int 主键自动增量,bar_name varchar) 和文本:

INSERT INTO foo(bar_name)
VALUES (@bar_name_new);
IF @@ROWCOUNT > 0
    SELECT bar_id, bar_name
    FROM foo
    WHERE bar_id = scope_identity();
Run Code Online (Sandbox Code Playgroud)

触发器可以在插入后修改 bar_name 字段。这就是为什么我需要刷新“bar_name”字段。现在我需要在 sqlite db 上做同样的事情。我写过这个:

INSERT INTO foo(bar_name)
VALUES (@bar_name_new);

 SELECT bar_id, bar_name
 FROM foo
 WHERE bar_id = (SELECT last_insert_rowid());
Run Code Online (Sandbox Code Playgroud)

我可以检查数据库中调用 sqlite changes() 函数的更改次数。我知道sqlite中的case语句。但是我怎么能告诉sqlite当changes()返回0时不需要做select?

t-sql sql-server sqlite

6
推荐指数
1
解决办法
1366
查看次数

选择当前年份的特定日期

我有一个需要选择的查询{current year}-05-31 00:00:000.有没有办法,我可以做到这一点,而不只是把年份连接到那个字符串?

这是我当前的查询:

SELECT DATEADD(dd, 30, DATEADD(mm, 4, DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)))
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server-2008-r2

2
推荐指数
1
解决办法
2132
查看次数

标签 统计

t-sql ×2

sql ×1

sql-server ×1

sql-server-2008-r2 ×1

sqlite ×1