我对MySQL中的查询有问题。
问题1:
查询:
SELECT * FROM information_schema.TABLES WHERE TABLE_SCHEMA="mysql" and TABLE_NAME="servers"
MySQL说:
#1054 -“where子句”中未知列“mysql”
问题2:
查询:
desc servers; // command no work
有人能帮我吗?
我正在试着为我的问题找出合适的查询。基本上,如果我这样做,我可能会得到100多个完全相同的结果:
$query = "SELECT * FROM highway WHERE state = 'VA'";
$result = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_array($result)) {
//code
有了这个,我会得到:
95
95
95
95 (and on and on...)
我有一个MySql查询,从它生成一个OUTFILE (.csv),并将其保存在/tmp中。请查找以下查询:
SELECT 'Artifact ID' id, 'Related Links' new_value UNION select CONCAT(si.ID_PREFIX, si.ID_COUNT) as ID, tmp.NEW_VALUE from ( select ACTIVITY_ID, ISSUE_ID, OLD_VALUE, NEW_VALUE from SCARAB_ACTIVITY where ISSUE_ID in (select ISSUE_
我编写了一个CGI脚本,它使用bash执行MySQL查询。对于MySQL身份验证,通过在.my.cnf文件中提供凭据使用自动登录,如下所示。
# the following section will be read by *all* client programs
[client]
user=dbuser
password=password
因为CGI程序是以apache用户的身份执行的,所以我将.my.cnf放在apache的主目录下。
# grep apache /etc/passwd
apache:x:48:48:Apache:/var/www:/sbin/nologin
#
如何使用mysql客户端通过ubuntu命令行从脚本中运行mysql查询?我知道我可以使用以下命令:
mysql -uroot -psecret -e "select * ..."
但是我的查询太大了,所以希望从脚本中读取。我尝试了以下几种方法,但没有起作用:
mysql -uroot -psecret < /path/to/script.sql
我知道错误:
ERROR 1046 (3D000) at line 1: No database selected
我似乎无法按顺序处理我正在使用的当前MySQL查询!
$query = "SELECT * FROM games WHERE game_platform = '$gameType' ORDER BY ASC";
$result = mysql_query($query);
我只得到以下错误。
警告:
mysql_fetch_assoc()期望参数1是资源,在
为什么我的MySQL查询不能工作?
查询:
DELETE FROM jos_community_awards a
LEFT JOIN jos_community_users u
ON a.userId = u.userid WHERE a.points > u.points;
错误:
错误1064 (42000):您的SQL语法出现了错误;请检查>对应于MySQL服务器版本的手册,以获得在a.userId = u.userid上的“a.userId=u.userid上的左联接jos_community_users u”附近使用的右语法,其中a.points >u.poi位
我在更新mysql数据库中的一些字段时遇到了问题,有时mysql拒绝让我进行查询,这让我很沮丧,除非我用双引号而不是单引号将字段括起来。它似乎没有可识别的模式来这样做,有人能解释一下这里发生了什么吗?
此查询不使用任何类型的引号(x是主键)
UPDATE table SET x = 1821 WHERE x =1820
这两个查询由于o附近的语法问题而失败。
UPDATE table SET o = 200 WHERE x =1820
UPDATE table SET 'o' = 200 WHERE x =1820
这个查询是有效的。
UPDATE
简单查询:我想包含一个列/字段,当SUM字段大于yield字段时,它是这样的,而当yield字段大于yield字段时,则是No。
Mysql说我在查询附近(我的整个查询)有一个错误,没有指定:
select *, IF(CONVERT(float,SUM) > CONVERT(float,yield),'Yes','No') from active_samples_w_seq where id > 100 and id < 200
我正在将一些CREATE查询从MySQL转换到Postgres,并遇到了在不同表上创建多个名称相同的键(也称为索引)时遇到的问题。
例如,在MySQL中,可以有多个CREATE查询,这些查询包含相同的索引创建语法: KEY OrgId (SiteId) --参见本文末尾的MySQL示例。
在Postgres中,我理解您不能在CREATE查询中定义索引,因此我运行两个单独的Postgres查询来定义索引:
CREATE INDEX OrgId ON MenuTypes USING btree (SiteId);
CREATE INDEX OrgId ON Pages USING btree (S
我刚开始使用hibernate,我用MYSQL编写了几个查询,但我需要将这些查询转换为hibernate标准。
SQL查询
select * from tableName where type = 'some Loss' and (datediff(detection_time,clearing_time )> '15 minutes' or action = 'ACTIVE') and id = '216';
我尝试过很少的代码使用标准,但它似乎不起作用。
使用以下查询:
SELECT * FROM people WHERE name REGEXP(bob|robert)
我假设mysql将以相当随机的顺序扫描每一行,查找' bob‘或'robert’(而不是先扫描bob,然后再扫描robert),这样做对吗?
如果是这样的话,有没有办法让mysql在不执行两次单独查询的情况下,先将整个表与'bob‘匹配,然后再与'robert’匹配?
我有一个表'users‘,它的结构是
id int auto_increment primary key, name varchar(25), username varchar(25))。
我有20张唱片。我想获取5-10范围内的所有记录。我如何在'MYSQL‘中做到这一点?
我尝试了我在许多网站上看到的解决方案,但它们对我不起作用。它们在执行查询时显示错误。我也尝试了这个查询:
SELECT * FROM users offset 5 rows fetch next 5 rows only;
但它也不起作用。如何在'MySql‘中达到预期的效果?
下面的mysql查询
select * from PrivateData.Table1 AS m
LEFT JOIN
PrivateData.Table2 AS i
ON m.GUID = i.OutId;
在此查询期间,工作正常:
delete m,i from PrivateData.Table1 AS m
LEFT JOIN
PrivateData.Table2 AS i
ON m.GUID = i.OutId;
给出错误:
错误1046 (3D000):没有选择的数据库
为什么是这种情况?否则如何从表中删除选定的行?
P.S.:我不是mysql查询方面的专家。
在PHP中,我使用PDO查询MySQL数据库。查询是
$id = 5;
$stmt = $con >prepare("select name from employee where id= ? ");
$stmt ->bindValue(1, $id, PDO::PARAM_INT);
这将按预期工作,并获取id为5的雇员的名称。但是,从日志中我可以看到实际执行的查询是
select name from employee where id= '5'
id为int型,使用PDO::PARAM_INT进行绑定。所以执行的查询应该是id= 5,而不是id
我有一个简单的MySQL函数:
DELIMITER $$
DROP FUNCTION IF EXISTS `mydb`.`CALC` $$
CREATE FUNCTION `mydb`.`CALC_IT`(Flag VARCHAR(1), One FLOAT, Other FLOAT)
RETURNS FLOAT
BEGIN
IF One IS NULL THEN RETURN 0; END IF;
IF Other IS NULL THEN RETURN 0; END IF;
IF Flag = 'Y' THEN
RETURN Oth
我有这个代码将数据从文本文件加载到MySQL表中。但我不知道为什么它不工作。
我的php代码:
self::$mysqliStmts=DBCon::ConnectToDB();
self::$data=DBCon::QueryDataWithoutProcessing("LOAD DATA INFILE 'C:\wamp\www\php\gagster\Others\friends.txt' INTO TABLE gagster.friends");
mysqli_close(self::$mysqliStmts);
public static f
我在MySQL中有一张表如下所示。
studentId studentName status
在这里,studentId是学生的ID,名字是他/她的名字,状态是传递/失败。我需要一个MySQL查询来根据学生通过的条件返回前N行。例如,如果表包含
0001 Sam Pass
1190 Mary Fail
2320 John Pass
2536 Micheal Pass
3010 Rose Pass
为了避免n=3,查询应该返回。
0001 Sam Pass
2320 John Pass
2536 Micheal Pass
有没有办法在MySQL中做到
我想把我的查询转换成codeigniter,这个查询在mysql中使用了两个databases.this工作,但我不能在codeignitor.mysql中写这个查询如下:
$sqlStr = "select s.*,b.booking_status as bstatus,b.booking_id,e.mfg_date,e.ownership,e.evaluation_category,e.booking_id,pb.booking_cancel_status,pb.unverified_cancel_status
from avstonau_poc.t
根据这个,我的理解是我可以在mysql 5.5.6+中运行这样的查询:
set @limit_start=10;
set @limit_offset=10;
select
ID,
AGE,
GENDER
from
PLAYER
limit
@limit_start, @limit_offset;
但是当我像这样运行它时,我会得到一个错误。
mysql> set @limit_start=10;
Query OK, 0 rows affected (0.00 sec)
mysql> set @limit_offset=10;
Query O
我有两个数组,如A、和B。
A=[1,2,3,4] , B=[10,20,30,40]
我想以这样的方式执行mysql更新查询。
$abc1=mysql_query("update table set corr='1' WHERE id=10");
$abc1=mysql_query("update table set corr='2' WHERE id=20");
$abc1=mysql_query("update table set corr='3' WHERE id=30");
$abc
我想在一个查询中执行以下操作,如果可能的话,我一直在徘徊:
$rowsQ = $mysql->query("SELECT * FROM `table` WHERE (a='a' AND b='b')");
if($rowsQ->num_rows){
$mysql->query("DELETE FROM `table` WHERE (a='a' AND b='b')");
}
我在WHERE中也看到了类似的情况,但只对这样的不同表进行了查询:
$mysql->query