然而,下面的查询将获取所有行,即使某一特定记录的某一列为null,它也将获取除该记录之外的所有记录。我想要一个查询来获取所有的值,不管它在列中是否有空值。
SELECT *
FROM
STUDENT S,COURSE C
WHERE S.STD_ID like '%'||null||'%'
and S.STD_NAME like '%'||null ||'%'
and S.STD_START_DATE like '%'||null ||'%'
and S.
我有一个表,这个表包含多个列。我想知道如何更新除某一列中的一个条目之外的所有条目。我不想使用多个更新查询。
如果你对此有任何想法,请与我分享。你的帮助是绝对感谢的。
表结构
查询(我自己尝试过,但我对此也很困惑)
UPDATE `table` SET STATUS = 0;
UPDATE `table` SET STATUS = 1 WHERE id = 4;
我的问题是如何将这些查询合并到一个查询中
我试图更新某一行的某一列,其中id是特定值。问题是,列的数目/名称是可变的,它们各自的ids也是可变的。
例如:
UPDATE table SET column1="hello" WHERE id = 5
UPDATE table SET column2="cucumber" WHERE id = 6
我如何在PDO中执行一个mysql查询来做到这一点?我试过的第一件事就是..。
UPDATE table SET column1="hello", column4="bye" WHERE id IN(5, 6)
但是,该查询将在行中
我感兴趣的是,如果某个列包含多个完全相同的数据,那么如何编写类似于此=>的mysql查询,以及如何检查该列值是否等于某一项。例如,我有一个列名为"local“的表,我检查的是=>
SELECT (IF(SELECT local FROM database WHERE local='something'),"Equal","NOT Equal");
这给出了错误=> 错误1242 (21000)子查询返回超过1行
如何编写这个检查代码?
因此,当我按某一列查询时,有时会返回多行数据,因为另一列不同。假设我想要在第二列具有特定值时忽略某些行,但仅当另一行中存在其他值时才忽略。下面是一个例子
Name Color
Tom Blue
Tom Red
Frank Red
因此,假设我在Name列下查询,值为Tom,我得到两行,一行Color为Blue,另一行为Red。假设我只对蓝色感兴趣,所以我想忽略值为Red的行,但是,只有在每个名称有多个color实例时才会这样。因此,例如,如果我在Frank下按名称查询,我不会因为该行的颜色是Red而忽略该行。希望这是有意义的。
我一直在尝试使用MySQL进行查询,检查某一列中的值(字符串$haystack )是否包含特定数据(字符串$needle),如下所示:
SELECT *
FROM `table`
WHERE `column`.contains('{$needle}')
在PHP中,该函数称为substr($haystack, $needle),因此可以:
WHERE substr(`column`, '{$needle}')=1
在尝试将MySQL查询转换为MsSql查询时,会遇到麻烦。
错误声明:
列'books.id‘在select列表中无效,因为它既不包含在聚合函数中,也不包含在GROUP BY子句中。
这个密码糟透了。
SELECT * FROM books group by books.category_id
供参考
提前谢谢!!
我们使用实体框架和.Net连接器在MySQL中编写了一个应用程序。但有时查询在应用程序中无法执行,我们不知道原因。数据库安装在Debian服务器上。
我们在日志文件中显示以下消息:
System.Data.EntityCommandExecutionException: Er is een fout opgetreden tijdens het uitvoeren van de opdrachtdefinitie. Zie de interne uitzondering voor details. ---> MySql.Data.MySqlClient.MySqlException: I
假设我有这样的查询:
UPDATE TEST SET
a = a + 23,
b = (b+5)/a,
c = c + a + b
WHERE
d = 6
OR
d = 10
列的原始值是
a = 0
b = 5
c = 10
查询会因为0值a (所以(b+5)/a不会计算)而崩溃,或者已经有value = 23了。
一般问题是:在UPDATE statement中,用于更新进一步列的值是已经更新的列的原始值还是更新的值?
使用的数据库之间有区别吗?MySQL,Server,Oracle,DB2,.?
编辑
在“右边”有更新的值,最
我使用的是greendao或sqlite,我的模型( user )有一个存储用户生日的道布列。如何找到生日在某一日期范围内的用户?
我在mysql中使用以下查询,但找不到使用sqlite执行此操作的方法:
SELECT *
FROM user
WHERE datediff( MAKEDATE( YEAR(NOW()) , DAYOFYEAR(dob) ) , NOW())
BETWEEN 0 AND 7
OR datediff( MAKEDATE( YEAR(NOW())+1 , DAYOFYEAR(dob) ) , NOW())
BETWEEN 0 AND 7
OR date
我使用以下代码(假设我已经计划在以后将其更改为mysqli,并且知道所使用查询的不安全性),从MySQL表中某一列的行中提取文本字符串,理想情况下,浏览器中的输出应该是从该列中随机选择的字符串:
mysql_connect($host,$username,$password);
mysql_select_db($database) or die(mysql_error ());
$query="SELECT * FROM `tablename` ORDER BY RAND() LIMIT 0,1;";
$result=mysql_query($query);
$rows
我尝试从一个php文件中使用以下查询语法:
$sql = "UPDATE properties SET properties.ht_hs = 3.5 WHERE properties.oil_data_id = acea.oil_data_id AND (acea.ACEA_A3 = 1 OR acea.ACEA_B3 = 1 OR acea.ACEA_B4 = 1) AND properties.ht_hs < 3.5";
$result = mysql_query($sql) or die(mysql_error());
然而,它并没有做我想要的事情。我的数据库中有
可以检查某一列中的特定数据吗?例如,我有一个名为'added'的列,值类似于'2011-04-18 10:44:42'
并且可以仅从列中检查日期'2011-04-18'
$date = sqlesc(get_date_time());
$res = mysql_query("SELECT id, username FROM users WHERE added =
$date ORDER BY username") or print(mysql_error());