📄 mysql-常见问题-24.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#000000" text="#FFFFFF">
<p><font color="#009900">解决没有匹配行的问题</font><br>
如果你有一个复杂的查询,涉及多个表,但没有返回任何行,你应该使用下列过程查找你的询问有什么不对: </p>
<p>EXPLAIN测试查询并且检查你是否能找出显然是错误的一些东西。见7.22 EXPLAIN句法(得到关于一个SELECT的信息)。 <br>
仅选择那些在WHERE子句中使用的字段。 <br>
一次从查询中删除一个表,直到它返回一些行。如果表很大,对查询使用LIMIT 10是一个好主意。 <br>
对应该已经匹配一行的列做一个SELECT,针对从询问中做后被删除的表。 <br>
如果你将FLOAT或DOUBLE列与有小数的数字进行比较,你不能使用=!。这个问题在大多数计算机语言是常见的,因为浮点值不是准确的值。<br>
mysql> SELECT * FROM table_name WHERE float_column=3.5;<br>
-><br>
mysql> SELECT * FROM table_name WHERE float_column between 3.45 and 3.55;</p>
<p>在大多数情况下,将FLOAT改成一个DOUBLE将修正它!</p>
<p>如果你仍然不能发现错误是什么,创建一个最小的可运行mysql test < query.sql的测试来显示你的问题。你可以用mysqldump
--quick database tables > query.sql创建一个测试文件,在一个编辑器编辑文件,删除一些插入行(如果有太多这些语句)并且在文件末尾加入你的选择语句。测试你仍然有问题,可以这样做:<br>
shell> mysqladmin create test2<br>
shell> mysql test2 < query.sql</p>
<p>使用mysqlbug的邮寄测试文件到mysql@lists.mysql.com。</p>
<p> </p>
<p></p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -