我有以下声明
$result = mysql_query("SELECT * from rests ORDER BY name asc WHERE flag = '1' LIMIT 0 , 20");
我收到以下错误
Invalid query: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE flag = '1
我正在尝试运行SQL查询,如下所示:
$sql = mysql_query("select * from users where new_mail = 0 OR new_events = 0 and emailed = 1") or die(mysql_error());
while($r=mysql_fetch_array($sql))
{
mysql_query("update users set emailed = 0 where username='{$r['username']}'") or die(mysql_
也许有人能帮上忙,因为我快疯了:
$action = $_GET['action'];
$items = rtrim($_POST['items'],",");
$sql = mysql_query("SELECT url, pid, log_no FROM plow WHERE id IN ($items)") or die ('Error: ' . mysql_error());
if ($action == 'start') {
while ($db_row = my
我想在yii框架中创建一个sql查询,如下所示:
mysql> SELECT id, body, MATCH (title,body) AGAINST
-> ('Security implications of running MySQL as root') AS score
-> FROM articles WHERE MATCH (title,body) AGAINST
-> ('Security implications of running MySQL as root');
我试了一下,但它不起作用:
$dataProvi
我不明白mysql为什么说where子句中有未知列。如果我移除别名并只使用log_archive.date,那么它就能正常工作。
下面是sql:
SELECT DISTINCT(log_archive.msisdn) AS msisdn,
DATE(log_archive.date) AS actionDate,
users.activation_date
FROM log_archive
INNER JOIN users on log_archive.msisdn = users.msisdn
WHERE l
我不知道为什么不管用..。我试图“按”一个创建的变量进行排序,如下所示:
mysql_query("SELECT *,DATE_FORMAT(FROM_UNIXTIME(banfrom), '%d/%m/%Y') as time FROM ab_list WHERE time = '24/08/2013' ORDER BY banfrom DESC LIMIT 0,50");
或,
$hr = date('d/m/Y');
mysql_query("SELECT *,DATE_FORMAT(FROM_UNIXT
在MySQL WHERE子句中使用派生值不起作用。有没有办法模拟这种行为?下面是一个由于WHERE count > 5行而失败的查询示例:
SELECT
title,
company_id,
count( id ) as count
FROM
table
WHERE
count > 5
GROUP BY
title,
company_id
我想用Nagios监视MySQL数据库的数量。我已经安装了正式的Nagios插件。
我使用的是'check_mysql_query':
./check_nrpe -H 192.168.1.10 -c check_mysql_query
Nagios代理:
command[check_mysql_query]=/usr/lib64/nagios/plugins/check_mysql_query -d mysql -q "select count(*) from information_schema.SCHEMATA where schema_name not in (&
这是我使用PHP在mysql上执行的查询
这是查询行
<?php
$query = "SELECT * FROM node WHERE type = 'student_report' AND uid = '{$uid}' LIMIT 1 ORDER BY created DESC";
?>
我得到以下错误
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right s
我知道这有很多讨论,但我的研究都不能说服我在MySQL中'where‘和'having’从句之间的区别。据我所知,我们可以使用'having‘实现所有可以通过'where’子句完成的任务。例如。select * from users having username='admin'。那你为什么需要'where‘从句呢?使用where会造成性能上的差异吗?
我有一个Mysql查询:
SELECT created_at as date FROM table
因此,我为created_at列创建了一个别名。现在我想在WHERE子句中使用这个别名:
SELECT created_at as date FROM table WHERE date = 'xxxx-xx-xx'
这不起作用。Mysql希望我使用真实的列名。有没有办法按照我想要的方式去做?
背景:我正在从多个表中选择记录,并使用UNION将它们联合起来。所有的表都有一个日期列,但在每个表中它的名称都不同。但是我想对美联航的记录执行WHERE,因此我需要始终使用相同的列名
我的问题是:
DELETE FROM abc_memory INNER JOIN abc USING (abc_id) WHERE x < y
MySQL抱怨说:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INNER JOIN abc USING (abc_id) WHERE x < y' at line 1
在MySQL中,在连接两个普通表
我正在尝试创建一个喜欢/不喜欢的脚本为一个图像网站。这两个脚本(一个用于likes,另一个用于图像显示)都是单独工作的,但是在组合脚本时,我收到了这个错误""Unknown column 'image_name‘in 'where子句’“。我认为这个错误出现在$get变量中。
$query_random_image=mysql_query("SELECT * FROM image_info ORDER BY RAND() LIMIT 0,1") or die (mysql_error());
$array_
为什么下面的查询不起作用?Mysql抱怨z-我不能在WHERE子句中使用别名吗?
SELECT x + y AS z, t.* FROM t
WHERE
x = 1 and
z = 2
我得到的错误是:
Error Code : 1054
Unknown column 'z' in 'where clause'
以下语句给出相同的结果(一个使用on,另一个使用where):
mysql> select * from gifts INNER JOIN sentGifts ON gifts.giftID = sentGifts.giftID;
mysql> select * from gifts INNER JOIN sentGifts WHERE gifts.giftID = sentGifts.giftID;
我只能在左外部联接的情况下发现“不匹配”的情况:
(找出从未由任何人送出的礼物)
mysql> select name from gifts LEFT OUTER JOIN s
我有一个MySQL数据库。我使用SELECT AS来测量两点之间的“距离”。我想要做的是使用我在SELECT中创建的相同的"distance“变量作为WHERE条件。
SELECT first_name.last_name AS name WHERE name="John Doe"
实现这一目标的最佳方法是什么?
$query = "INSERT INTO directory_level_one (child_categories)
VALUES
('$category_name')
WHERE
category = '$parent'";
目前,当我在上面的sql查询中添加WHERE部分时,我得到了以下错误。
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server versio
我和MySQL一起工作。让我们假设我有一个表test(id, x) --数据类型并不重要--下面的查询
SELECT id
FROM test
WHERE F(x) <= 1000;
此外,让我们假设F是一个“或多或少复杂”的函数。现在,如果将查询更改为:
SELECT id, F(x)
FROM test
WHERE F(x) <= 1000;
也就是说,我需要F(x)的结果不仅适用于WHERE条件,还需要作为SELECT子句中的输出。我能安全地假设MySQL足够聪明,只计算每一行一次吗?
(如果需要这些信息,在我的具体情况下,我使用MySQL空间函数ST_WITHIN、ST_G
我在使用这个查询时遇到了问题,该查询根据不同表中的回复数量对论坛主题进行排序。我在where之前尝试了Left join,但是在while循环中遗漏了一些数据。
SELECT forum_topics.*, COUNT(forum_posts.comment_id) AS replies
FROM forum_topics
WHERE forum_topics.subcat_id = '$subcatid'
LEFT JOIN forum_posts
ON forum_topics.topic_id=forum_posts.topic_num
ORDER BY re
我想知道mysql视图是如何针对where子句进行优化的。我已经创建了一个mysql视图。
CREATE VIEW `testView` AS
select ID from `table1`
union
select ID from `table2`
当我触发此查询时
select * from testView where some_col = 'some_val'
执行此查询后,mysql将执行什么操作。
mysql是否将table1和table2中的所有行都放在内存中,然后触发where子句?
或
是否直接在内部触发此查询?
select ID from `table1
有人能告诉我这个mysql查询有什么问题吗?
$p = mysql_query("SELECT name,subname FROM brands GROUP BY name WHERE
having count(*) > 10 ORDER BY RAND() LIMIT 1")or die(mysql_error());
上面写着:
您的SQL语法出现了错误;请检查与您的MySQL服务器版本相对应的手册,以便在第1行使用接近于“由RAND()限制1顺序计数(*)> 10次”的正确语法。
我想从MySQL数据库中获取数据,但由于查询不正确,我得到了一个异常。我想通过使用用户的用户名作为条件来获取特定用户的数据。 下面是我使用的查询: String userName = "student1" ;
String query = "SELECT * FROM `result` ORDER BY score DESC WHERE username = " +userName; 这是我得到的一个例外。 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error
我在SQL查询中使用了一个简单的(如果不存在)/WHERE语句(我尝试了这两种语句),而且我总是得到一个mysql错误,不知道为什么。尝试使用不同的引号,检查我的MySQL服务器版本等。
这些是我所用的陈述
IF NOT EXISTS (SELECT * FROM kurs_users WHERE kurs_users.uid = 'someuser')
BEGIN
INSERT INTO kurs_users(uid) VALUES ('someuser')
END
和
INSERT INTO kurs_users
VALUES ('
如何使用复选框从表格中删除多个数据?我有这样的代码:
<form id="prefForm" action="coments-del.php" method="post">
<?
$result = mysql_query("SELECT * FROM comments");
$myrow = mysql_fetch_array($result);
do
{
$res = mysql_query("SELECT title FROM data WHERE id=$myrow[po
我有一个查询,该查询从MySQL表中删除一行,如果查询如下所示,该查询非常正常:
$sql = "DELETE FROM table WHERE id = 1"
但是,当我添加一个AND子句时,它不起作用,或者出现错误:
$sql = "DELETE FROM table WHERE id = 1 AND name='Jack'"
MySQL DELETE不支持AND子句吗?
你好,堆栈溢出的朋友们,我需要你们的帮助,用这个sql clausule,这是mysql的错误:
_mysql_exceptions.ProgrammingError: (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'WHERE email='Tysaic0344@gmail.com'' at line 1"
我有下面的2 mysql_queries**:**
查询1(对于imgClass和imgGender,这个查询还会重复两次):
$imgFamily_query = "SELECT DISTINCT imgFamily FROM primary_images WHERE '$clause' ";
查询2:
$query_pag_data = "SELECT imgId, imgURL, imgTitle, view, secondary FROM primary_images WHERE '$clause' ORDER BY imgDa
mysql> describe events;
+-----------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI |
如何才能使此查询起作用:
SELECT column1.....,SUM(Hits) AS Hits
FROM table
WHERE SUM(Hits) > 100
GROUP BY column1.....
问题是where子句,mysql显示错误:
Error Code : 1111
Invalid use of group function
我尝试将查询更改为:
SELECT column1.....,SUM(Hits) AS Hits
FROM table
WHERE Hits > 100
GROUP BY column1..
我试图在MySQL中执行以下操作:
SELECT DISTINCT field
FROM table
WHERE COUNT(field) > 10
失败: 1111 -无效使用组函数(据我所知,您不能在where子句中使用组函数,如COUNT?)
选择(不同的)至少存在于N行中的所有字段的正确方法是什么?这是我必须在外部做的事情吗,比如说,PHP?
谢谢!