标签: sql-delete

SQL DELETE性能

delete from a A where a.ID = 132.
Run Code Online (Sandbox Code Playgroud)

表A包含大约5000条记录,A.ID是表A中的主键.但是它需要很长时间才能删除.有时它也会超时.该表包含三个索引,并由三个外键引用.任何人都可以解释为什么即使我们基于主键删除它也需要很长时间.请告诉我一些优化这个问题的方法......?

sql sql-server sql-server-2008 sql-delete

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

删除表中的所有帖子除了big_image有值的那个帖子?

我想删除表中的所有帖子,除了big_image有值的那个帖子?

我几乎尝试了所有东西,但它不起作用!这是最后一个:

sql3="delete from links where userId="& session("user_id") &" 
and big_image NOT IN (select big_image 
from links 
where userId = "& session("user_id") &" and big_image="& bgbild &");"
Run Code Online (Sandbox Code Playgroud)

我真的很感激一些帮助.

sql sql-delete

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

从2个表中删除

我的数据库中有2个表

用户...

ID    Username    Randomkey
1     Dionne      938493
2     Liam        902303
3     James       232039
4     Sarah       320923
Run Code Online (Sandbox Code Playgroud)

利益......

ID    User_ID    Interest
1     3          Army
2     3          Boxing
3     3          Tennis
4     4          Make Up
Run Code Online (Sandbox Code Playgroud)

在我的兴趣表中,'User_ID'等于来自我的users表的'ID'.

我想编写一个查询,当触发时,从我的'users'表中删除该行,同时从interest表中删除与该用户相关的所有数据.

我不确定如何做到这一点,我对谷歌没有运气.

如果有人能给我一些建议或至少指出我在哪里可以找到这些信息,那将是一个很大的帮助.

在我脑海里,我认为这将是:

DELETE FROM users, interests WHERE ID = '$userID' AND User_ID = '$userID'
Run Code Online (Sandbox Code Playgroud)

mysql sql-delete

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

如何用jquery删除mysql记录

我有以下代码删除mysql记录,我想转换它所以它将是一个ajax/jquery代码,所以我可以保持在从表中删除记录后的同一页面.现在,它工作正常但它不在同一页面上,我需要刷新页面才能看到结果.这只是完整代码的一部分.一页上的所有代码.

//get the mysql results
//this is a repeated region
<tr>
       <td><?php echo $row['id']; ?></td>
       <td><?php echo $row['title']; ?></td>
       <td><?php echo $row['description']; ?></td>
       <td><a href="manage.php?id=<?php echo $row['id']; ?>">Delete</a>
       </td>
</tr>


if ((isset($_GET['deleteid'])) && ($_GET['deleteid'] != "") &&             (isset($_POST['delete']))) {
  $deleteSQL = sprintf("DELETE FROM my_table WHERE id=%s",
                       GetSQLValueString($_GET['deleteid'], "int"));
Run Code Online (Sandbox Code Playgroud)

php mysql ajax jquery sql-delete

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

从表中删除a = b和b = a的记录

我有一个有两个字段的表,a和b.在a = b和b = a的意义上,一些记录是重复的.我想删除这些记录.

考虑一下:

declare @temp table (a int, b int)

insert into @temp values (1, 2)
insert into @temp values (3, 4)
insert into @temp values (4, 3)
insert into @temp values (5, 6)

--delete 3, 4 or 4, 3

select * from @temp

/*
a | b
--|--
1 | 2
3 | 4
5 | 6

or (I don't care which one)

a | b
--|--
1 | 2
4 | 3
5 | 6 …
Run Code Online (Sandbox Code Playgroud)

sql sql-server sql-delete

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

在 Mysql 中删除查询工作错误

我有一个SP:

DELIMITER $$
CREATE PROCEDURE test_ind(in StudentID varchar(4), in issueYear varchar(4))
BEGIN 
delete from Mark where StudentID = StudentID and issueYear = issueYear;
END $$
DELIMITER ;
Run Code Online (Sandbox Code Playgroud)

当我调用这个 SP 时: call test_ind('8','2011')

它必须删除 studentID = 8 但它删除了表中的所有行。

这个查询有什么问题?
请问你能帮帮我吗!

mysql stored-procedures sql-delete

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

使用order by和limit从多个表中删除

我正在尝试使用ORDER BY DESC和LIMIT从两个具有关系的表中删除.

DELETE FROM my_rel_table AS t1
LEFT JOIN my_photo_table AS t2 ON t2.typeid = t1.typeid
WHERE t1.relid = 1 
AND t1.type = 1
ORDER BY t1.id DESC
LIMIT 1
Run Code Online (Sandbox Code Playgroud)

显然上面的代码不起作用,因为mysql不接受使用内部连接的顺序和限制.

表结构如下:

my_rel_table
id relid relno typeid type
int int int int tinyint

my_photo_table
typeid pos_x pos_y width height
int    int   int   int    int
Run Code Online (Sandbox Code Playgroud)

mysql sql sql-delete

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

MySQL:未找到行时返回DELETE查询

当我尝试从MySQL数据库中删除不存在的东西时,查询返回TRUE.

我想知道什么时候没有删除.我是否需要先前的查询来查找是否有要删除的行?

有更简单的方法吗?我的意思是,使用单个查询?

我正在使用php通过mysqli_query()函数连接数据库.

php mysql sql-delete

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

使用不存在的地方删除

我正在尝试删除主文件中存在的记录,其中包含三个字段mn_no,sb_no和dp_no的帐号不在事务表中.由于帐号可能在一个或多个交易表中,因此我需要测试其在所有交易表中的存在.当我运行以下查询时,MS-SQL在第1行附近返回不正确的语法错误.

DELETE
FROM SYACTFIL_SQL a
WHERE NOT EXISTS (
        SELECT b.mn_no
            ,b.sb_no
            ,b.dp_no
        FROM gltrxhst_sql b
        WHERE a.mn_no = b.mn_no
            AND a.sb_no = b.sb_no
            AND a.dp_no = b.dp_no
        )
    AND NOT EXISTS (
        SELECT b.mn_no
            ,b.sb_no
            ,b.dp_no
        FROM gltrxfil_sql b
        WHERE a.mn_no = b.mn_no
            AND a.sb_no = b.sb_no
            AND a.dp_no = b.dp_no
        )
    AND a.mn_no <> '00000000'
Run Code Online (Sandbox Code Playgroud)

sql-server sql-delete

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

没有主键就从MYSQL数据库删除ROW

如何在不具有每一行唯一输入的列的情况下从数据库中删除一行?例:

    Surname     Name         Age

    Mark        Oswell       12
    Adrian      Peterson     15
    Mark        Penda        18
    July        Peterson     12
Run Code Online (Sandbox Code Playgroud)

执行此操作的基本方法是:

DELETE FROM ____ WHERE ____
Run Code Online (Sandbox Code Playgroud)

如果我删除WHERE surname = Mark,我将不会只删除1行,而是2行。解决此问题的最佳方法是使用主键,但是我不能使用它(长话短说,不要问为什么:))。所以我需要另一种方法来解决这个问题。

有什么办法可以删除行号?

例如,假设我要使用删除行Mark Penda 18。我可以做类似的事情吗:

DELETE FROM ____ WHERE row = 3
Run Code Online (Sandbox Code Playgroud)

mysql sql database primary-key sql-delete

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