Tag: MySQL

如何在MySQL中设置初始值和自动增量?

如何设置从1001开始的MySQL表中“id”列的初始值? 我想做一个插入"INSERT INTO users (name, email) VALUES ('{$name}', '{$email}')"; 不指定id列的初始值。

获取任何表的当前AUTO_INCREMENT值

如何获得MySQL中的表的当前AUTO_INCREMENT值?

获得每组最高/最小的logging

怎么做? 这个问题以前的标题是“ 在使用子查询的复杂查询中使用rank(@Rank:= @Rank + 1) – 是否可以工作? ”因为我正在寻找使用等级的解决scheme,但是现在我看到Bill发布的解决scheme是好多了。 原始问题: 我试图编写一个查询,将从每个组中给出一些定义的顺序最后一个logging: SET @Rank=0; select s.* from (select GroupId, max(Rank) AS MaxRank from (select GroupId, @Rank := @Rank + 1 AS Rank from Table order by OrderField ) as t group by GroupId) as t join ( select *, @Rank := @Rank + 1 AS Rank […]

MySQL Orderby一个数字,最后为空

目前我在发言中正在做一个非常基本的OrderBy。 SELECT * FROM tablename WHERE visible=1 ORDER BY position ASC, id DESC 这个问题是'位置'的NULL条目被视为0.因此,位置为NULL的所有条目都出现在具有1,2,3,4的条目之前。 例如: NULL, NULL, NULL, 1, 2, 3, 4 有没有办法实现下面的命令: 1, 2, 3, 4, NULL, NULL, NULL.

MySQL:快速细分连接types

我想快速分解一下MySQL连接的types。 我知道这些,其余的我不确定他们的意思。 逗号分隔(这到底是什么?): SELECT * FROM a, b WHERE b.id = a.beeId AND … 显示来自a的信息,即使在b中没有匹配: SELECT * FROM a LEFT OUTER JOIN b ON b.id = a.beeId WHERE … 我已经看到了其他的连接,但是想知道是什么使它们变得不同, INNER / OUTER是什么,增加了LEFT改变的东西。 我已经知道如何join工作,我只想知道是否有其他types的联接,或者如果他们是不同的方式来获得相同的结果。

我怎样才能join多个SQL表使用ID?

我有4个不同的表,我想join。 这些表格的结构如下: TableA – aID | nameA | dID TableB – bID | nameB | cID | aID TableC – cID | nameC | date TableD – dID | nameD 从表A开始,我知道如何使用b来连接表a和c,因为b具有这些表的主键。 我希望能够在TableA上连接表TableD。 下面是我首先连接表A和B的SQL语句,然后把它连接到C: SELECT TableA.*, TableB.*, TableC.* FROM (TableB INNER JOIN TableA ON TableB.aID= TableA.aID) INNER JOIN TableC ON(TableB.cID= Tablec.cID) WHERE (DATE(TableC.date)=date(now())) 当我尝试添加另一个连接时,为了包含D,我得到一个错误“TableD”未知: SELECT TableA.*, […]

UTF-8:一般? 滨? Unicode的?

我想弄清楚什么样的sorting规则我应该使用各种types的数据。 我将要存储的内容100%是用户提交的。 我的理解是我应该使用UTF-8通用CI(不区分大小写)而不是UTF-8 Binary。 但是,我无法在UTF-8 General CI和UTF-8 Unicode CI之间find明确的区别。 我应该将用户提交的内容存储在UTF-8 General或UTF-8 Unicode CI列中吗? UTF-8二进制文件适用于什么types的数据?

如何查看表或列的所有外键?

在MySQL中,如何获得指向特定表的所有外键约束的列表? 一个特定的列? 这与Oracle的问题是一样的,但是对于MySQL来说。

经度/纬度find最接近的经度/纬度 – 复杂的SQL或复杂的计算

我有经纬度,我想从距离最近的纬度和经度的数据库中提取logging,如果这个距离比指定的距离长,那么不检索它。 表结构: id latitude longitude place name city country state zip sealevel

ADOdb中的SQL注入和一般的网站安全性

我已经做了很多的阅读,仍然不明白100%SQL注入是如何发生的! 我想从那些知道的人那里看到基于我的例子的SQL注入的具体例子,所以它可以被复制,testing和修复。 我试图SQL注入我的代码,不能,所以我想有人来certificate我,否则! 1.我正确的说SQL注入只能通过POST或者GET方法来实现,也就是说在网站上它应该是post的forms,比如“注册或者search”或者像“search.php?tags = love”这样的查询。 说这是可能的注入下面的代码,有POST方法? $name = trim($_POST['username']); $mail = trim($_POST['email']); $password = trim($_POST['password ']); if ($errors == "false") { $sql = "INSERT INTO clients SET name='" . mysql_real_escape_string($name) . "', mail='" . mysql_real_escape_string($mail) . "', password='" . mysql_real_escape_string(sha1($password)) . "'"; $connection->execute($sql); } 2.另一个有GET方法: rate.php?like&videoID=250&userID=30 $sql = "SELECT videoID FROM likes WHERE videoID […]