[英]MySQL Select ID's which occur on different rows with multiple specific values for a column
[英]MySQL SELECT rows which respond to specific MULTIPLE values in one of the columns
我已经遍及整个Web以及StackOverflow,并且发现了许多类似的主题,但是没有一个主题可以特别满足我的需求。 因此,我将其发送到那里,因为我知道可能缺少一些小东西才能使其正常工作。
让我们想象一下下表:
location | title | description | quantity
============|===========|=============|==========
shelf | apple | red | 2
drawer | banana | yellow | 4
shelf | kiwi | green | 2
cupboard | lemon | yellow | 1
fridge | melon | orange | 3
drawer | peach | orange | 1
我想做的是从此表中选择drawer
或shelf
上的所有物品(例如drawer
和shelf
),然后按以下顺序对它们进行排序:首先,位置升序,其次,数量降序。
因此,我所拥有的(在整个网络上搜索之后)是以下代码,这是唯一不返回错误但也不返回任何项目的代码:
SELECT * FROM items WHERE location = 'shelf' AND location = 'drawer' ORDER BY location ASC, quantity DESC
我要去哪里错了? 任何反馈将不胜感激!
通常,问题在于如何从多个表中选择值,然后将它们联接。 但是,我只需要一张表中的值。 但是,这些值需要响应它们共享的特定多个值。
SELECT * FROM items WHERE location = 'shelf' or location = 'drawer'
ORDER BY location ASC, quantity DESC
要么
SELECT * FROM items WHERE location in ('shelf','drawer')
ORDER BY location ASC, quantity DESC
尽管对于仅两个项目,我可能会选择第一个,即3个或更多,我可能会使用in()
附加信息:之所以没有返回记录,是因为您在自己的情况下使用AND
。 请记住,一行中的每一列都只有一个值。
尝试使用这个.....
如果您想在php中使用它,可以修改我的代码并将其替换为您的代码。 开发此程序时,我遇到了类似的问题:
$data = mysql_query("SELECT * FROM cancer WHERE Age ='1'OR Age = '2' OR Age = '3'OR Age = '4'OR Age = '5'OR Age = '6'OR Age = '7'OR Age = '8'OR Age = '9'")
如果是sql,请使用:
SELECT * FROM items WHERE location = 'shelf' or location = 'drawer'
ORDER BY location ASC, quantity DESC
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.