我正在为SQL语句而苦苦挣扎。
我希望更新具有复合主键的表中除某些行以外的所有行。
这就是我现在要做的:
UPDATE Products SET Active = 0
_
UPDATE Products SET Active = 1
WHERE (Id_A = 1 AND Id_B = 1 AND Id_C = 1) OR
(Id_A = 1 AND Id_B = 2 AND Id_C = 1) OR
(Id_A = 5 AND Id_B = 8 AND Id_C = 3) OR
.
.
.
etc
这行得通,但我
我在SQLite 3数据库中有以下SQL查询
UPDATE Events
SET location = CASE
WHEN identifier = (SELECT id FROM users_db.exerciseLists WHERE patientId = ? AND complete = 1)
THEN 'yellow'
WHEN identifier = ?
THEN 'green'
WHEN date_start < datetime('
我搜索它,但我找不到我真正需要的东西。
我应该在一个语句中使用PREPARE、EXECUTE在MySQL中执行多个update查询。
示例查询:
update tableName set column2='a', column3='b' where column1=1;
update tableName set column2='c', column3='d' where column1=2;
update tableName set column2='f', column3='g' where
我想执行许多这样的SQL UPDATE语句:
UPDATE cityd SET time_zone='-7.000000' WHERE locId = 173567;
UPDATE cityd SET time_zone='-8.000000' WHERE locId = 173568;
UPDATE cityd SET time_zone='-6.000000' WHERE locId = 173569;
UPDATE cityd SET time_zone='-5.000000' WHERE locId = 173570;
U
我有一个每月更新表的脚本:
DELIMITER |
CREATE
EVENT `kpiparams_scheduled_update`
ON SCHEDULE
EVERY 1 MONTH
STARTS '2020-02-01 02:59:59'
ON COMPLETION PRESERVE
COMMENT 'KPIParams was updated by event_kpiparams_scheduled_update'
DO
BEGIN
UPDATE kp
我正在尝试编写SQL来根据代码中的一些代码条件更新多个列。
例如,使其成为两列中最简单的一列
UPDATE table set A = valueA where conditionA..
或UPDATE table set B=valueB where conditionA..
或UPDATE table set A=valueA, B=valueB where conditionA..
条件相同,但valueA/valueB可能不存在,具体取决于代码
有没有什么方便的方法可以将它们组合在一个WHERE 1=1 and <condition>中,比如select one SQL,
我是否可以在选择用例时使用If Select?
Update Tab
set Quantity2 = a.Quantity
from
(
select
case when D.Quantity1 > Tab.Quantity2
then D.Quantity1 ------------> (if and else here)
else Tab.Quantity3
end
as Quantity
from Dab D
inner join Tab
on
D.ID = Tab.ID
)a
我希望在S
我创建了一个脚本,自动使用For循环和all创建Update语句,最后的结果执行如下:
mysql_query("UPDATE table2
SET(code2='sfvv' WHERE number='1'),
(code2='sdvsdv' WHERE number='2')
WHERE id='32'") or die ( mysql_error() );
错误说:您的SQL语法有错误;请检查与您的M
我运行以下代码:
$crm_code = "Omaewamoshindeiru";
DB::update("UPDATE death_invitation set active = false where crm_code = '?' and active = true and contract_type_id IN (13, 14, 20, 21)",[[$code]]);
我收到以下错误:
Illuminate/Database/QueryException with message 'PHP Notice: Array to st
我正在使用Liquibase更新一些表,并且我似乎遇到了一个错误:每当我的.yaml文件中有一个;时,它就会抛出错误(只将其中的一部分放入其中,因为它只是重复相同的错误消息):
严重1/11/18 11:39 AM:液化: Tables/Team/Team.updateTeamNames.yaml::1::mayj4::Ch Tables/Team/Team.updateTeamNames.yaml::1::mayj4失败。错误:您的SQL语法出现了错误;请检查与您的MySQL服务器版本对应的手册,以获得接近'UPDATE Team SET Name ='B‘WHERE =’
我在MySQL 5.7.33中有一个存储过程,在这里我必须执行该语句来更新表中的值。
样本数据表:
ID COL Parent
1A 20 NULL
2B 30 NULL
3C 40 NULL
我有两个在存储过程中动态发送的语句。第一种说法效果很好。我可以像下面这样分组:
update Test.SAMPLE SET COL = 0 where ID IN ('1A','2B','3C');
至于第二条语句,父值也需要更新。所以,我想得到如下的声明:
update Test.SAMPLE set COL =0,parent='
我有以下形式的查询:
public static final String CLASS_UPSERT_QUERY = Joiner.on(" ").join(
"MERGE INTO CLASS USING DUAL ON",
"(<condition1>)",
"WHEN MATCHED THEN",
"UPDATE SET ()",
"WHEN NOT MATCHED THEN",
"INSERT () VALUES ()
我在SSIS 2012中有一个包,它在控制流级别上有一个执行SQL任务。
所讨论的SQL通过SQL语句执行Upsert。我想要做的是,返回插入记录和更新记录的计数(这里不删除需要担心的内容)。我使用output选项将更改后的recs输出到一个表变量。
我尝试将这些值返回为:
Select Count(*) as UpdateCount from @mergeOutput where Action = 'Update'
和
Select Count(*) as InsertCount from @mergeOutput where Action = 'Insert'
我有一个包含图像数据的MySQL表。我的后端应用程序正在使用一个实时排序模块(拖放图像)。
我想要的是在单查询中更新所有排序后的图像,而不是每次将图像拖到新位置时更新单个查询(排序时需要禁用任何连接)。
现在,我使用foreach循环完成了这个任务。比较两个数组-一个保存文件的原始顺序,另一个保存新顺序。当排序完成后,它只更新具有不同顺序的图像。但我不确定循环是否是触发多个查询的好地方(对于许多图像,这可能会极大地重载应用程序)。
public function setSortFilesinSql($new_sort_arr)
{
$sql = new sql();
$sql-
目前,我在sql中有数据,需要合并行中的计数。
我的代码是:
WHERE lower(GENDER) IS NOT NULL
GROUP BY lower(GENDER)
它把一个表格放出来,比如:
Gender Count
female 100
f 101
male 102
m 103
unknown 104
有没有一种方法可以合并女性和f的计数,然后类似地合并男性和m的计数?
我想在一条语句中执行多个查询,这是我的代码,它不起作用。
$stmt = $mysqli->prepare("UPDATE menu SET DESCRIPTION= ('$txt1'), VISIBLE=('$ckHOME1')
where id='1';
UPDATE menu SET DESCRIPTION= ('$txt1'), VISIBLE=('$ckHOME1') where id='1';
UPDATE menu SET DESCRIPTION= ('$t
我试图使用事务将两个电话号码交换给数据库中的两个雇员。我不确定我是否理解了SQL中的变量,因为我一直收到一个错误。我是否引用了这些变量,对交换是错误的?以下是我到目前为止所拥有的:
use lunches;
start transaction;
set @phone1 = (select phone_number
from l_employees
where employee_id = '205');
set @phone2 = (select phone_number
from l_employees
where employee_id = '209')
我在表"werknemer“中添加了一个新列,该列名为"salaris_schaal”。
我想在那一栏中有一个int,可以说明雇员(“狼人”)的薪级是什么。"Salaris“是雇员的工资。
薪级表有最低工资和最高工资,我在网上帮助下完成了这个查询(搜索)。我认为这是最接近我能得到的atm,我尝试了不同的查询,但这些没有工作。
UPDATE werknemer
SET salaris_schaal =
CASE
WHEN salaris > 700 and salaris < 1200
THEN salaris_
因此,我在php文件中有一条sql语句,该语句与从用户获取输入的表单相关。然而,当他们进入一种类型时,它会更新该列中的所有记录,而不是他们选择的特定记录。
我使用的原始语句是第一个代码,但它会编辑整个列。因此,我一直在尝试其他子句,所以它只更改了具有匹配album_id的子句,但没有任何运气。
$sql = "UPDATE album
SET genre_id = (SELECT genre_id
FROM genre
WHERE genreName='" . $_POST['lstGenre'] . "'
我的代码中有以下错误:
MySQL说:文档
1064 -您的SQL语法有错误;请检查与您的MySQL服务器版本对应的手册,以便在第20行使用接近“END”的正确语法。
CREATE PROCEDURE updateUser(
IN firstname VARCHAR(20),
IN Vlastname VARCHAR(20),
IN Vemail VARCHAR(50),
IN Vpassword VARCHAR(100),
IN Vyear INT(5),
IN Vgender VARCHAR(10),
IN Vpr
这可能是一个基本的问题,但我是Oracle SQL的新手。我正在尝试让下面的SQL在Oracle SQL Developer中执行。错误信息位于代码下方。自从粘贴了错误消息后,我已经修改了代码。第28行是代码中的最后一行“END”;第14行第1列引用单词"Select“。 DECLARE
v_StartDate Date := &StartDate;
v_EndDate Date := &EndDate;
SET v_StartDate := CASE &StartDate
WHEN TO_DATE('01/01/1900'
我查阅了这一页:和这一页一样,但没有一个简单的程序去工作.
UPDATE:要清除我想要做的事情:我希望从一个表中选择所有行,其中字段id为1,0或可能是其中之一。这是由过程的输入参数指定的,该过程的值为0、1或2。
因此,如果_id =0,我想:选择*从表,其中id =0
如果_id =1,我想:从其中id =1的表中选择*
如果_id =2,我想:从表中选择*,其中id在(0,1)
我希望我能让它的其余部分独自工作,如果我只有以下简单的案例陈述工作.
我想做的是:
begin
select * from TABLE where
case _id
w
我想用一个更新查询更新多个行。我不需要这样的绑定就可以做到这一点:
Product::whereIn('id',[1,2,3])->update([
'stock' => DB::raw('CASE id WHEN 1 THEN 1000 WHEN 2 THEN 1001 WHEN 3 THEN 1003 END')
]);
但是,我想使用CASE语句的数据绑定。我试过:
Product::whereIn('id',[1,2,3])->setBindings([1,1,2,2,3,3])->upda
我想在存储过程中编写3条update语句。如何确定只有在成功完成第一个update语句时才会执行第二个和第三个update语句?
create or replace procedure test
as
begin
update statement1;
commit;
--following block executes only when update 1 is sucessful
update statement2;
commit;
update statement2;
commit;
end;
我不想用SQL查询来检查第一个update语句的状态,因为它太大了。
我使用dbeaver连接到Mariadb。当我试图运行多行更新语句时,例如
update x set warehouse_id='WH02' where soh_id='f0b4d220';
update x set warehouse_id='WHU1' where soh_id='17482705';
我得到了“由:java.sql.SQLSyntaxErrorException引起的错误:您的SQL语法中有一个错误;检查与您的MariaDB服务器版本对应的手册,以获得使用”.“的正确语法。”如果我对在MySQL工作台中创建的