我已经尝试了一切,但没有任何作用..即使在我写的其他代码中,它也有效.但由于某种原因,它现在不会.
我想加入ID = userID的两个表.当我加载页面时,我收到此错误:
警告:mysql_fetch_array():提供的参数不是第17行的/home/ynxwleus/domains/mustseenmovies.nl/public_html/films/userinfo.php中的有效MySQL结果资源
有没有人可以帮我解决这个问题?
码:
$userID = $_SESSION['s_userID'];
echo $userID;
$query = "SELECT userID, userName, userFrontname, userSurname, filmID
FROM users
JOIN seenIt
ON users.userID = seenIt.userID
WHERE (userID ='$userID')";
$res = mysql_query($query);
while ($row = mysql_fetch_array($res)) {
echo $row['userName'];
echo $row['userFrontname'];
echo $row['userSurname'];
echo $row['filmID'];
}
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我正在尝试加入一个查询的结果来过滤第二个查询的结果.
第一次查询
// get the compound centre number and languageId key
var centreKeys = unitOfWork.CentreTranslationRepository.GetAll()
.Where(w => w.Language.cuture == searchCulture || w.language_id == 1)
.GroupBy(g => g.Centre.number)
.Select(s =>
new
{
CentreNumber = s.Key,
LanguageId = s.Max(g => g.language_id)
});
Run Code Online (Sandbox Code Playgroud)
这将返回以下形式的结果:
{ CentreNumber = 1589, LanguageId = 27 }
{ CentreNumber = 261, LanguageId = 1 }
{ CentreNumber = 1257, LanguageId = 1 }
{ CentreNumber = 925, LanguageId = 1 }
Run Code Online (Sandbox Code Playgroud)
等等
第二个查询
// join onto the translated …
Run Code Online (Sandbox Code Playgroud) 我有两个表:post,post_image
我目前正试图加入他们:
$sql = 'SELECT post.*, post_image.name AS img FROM post, post_image
WHERE post_image.postId=post.id LIMIT 10';
Run Code Online (Sandbox Code Playgroud)
这是我的问题.有些帖子在post_image中没有任何条目,但我仍然需要它们返回.我知道mysql可以检查null,但是我不知道如果那是解决方案,它会在我的语句中出现在哪里.我也不完全确定我能用我正在使用的速记连接来做到这一点.
请帮忙 :)
编辑:
这正在按预期工作,但我还需要确保它只使用字段ordinal = 0拉取post_image,因为可以有多个post_image条目.我尝试添加一个WHERE子句,它似乎只用图片来拉帖子.这就是我所拥有的:
SELECT post.*, post_image.name AS img FROM post LEFT JOIN post_image ON post_image.postId=post.id WHERE post_image.ordinal=0 LIMIT 10
Run Code Online (Sandbox Code Playgroud) 我有一张桌子user
和一张桌子post
.它是一个N-1关系,意味着关系是通过完成的post.user_id
.
我想找到没有帖子名为"foobar"的用户.我试过这个:
SELECT `users`.* FROM `users`
INNER JOIN `posts` ON `posts`.`user_id` = `users`.`id`
WHERE post.title !="foobar"
Run Code Online (Sandbox Code Playgroud)
如果一个用户有一个名为foobar的帖子,则不会返回,但只要有一个名为foobar的帖子,就会返回该用户.
在SQL中我怎么说"我希望没有一个名为foobar的帖子的用户".
我试图在一个查询中从三个表中获取信息.我不知道是否可以这样做...到目前为止我尝试过的东西没有用,但我对SQL也不是很了解.
我有三张桌子registration
,其中包含注册信息,experience
用于保存客户的活动选择(如果他们选择了晚餐,午餐,单日等),并且additionalInfo
还包含其他活动信息,例如他们对特定研讨会的选择在活动期间.registration
并且experience
将始终具有值,但additionalInfo
不保证具有值.我想要的是,在一个查询中,获取注册和事件选择,以及是否有东西additionalInfo
要检索或返回NULL
.
我正在尝试这个查询:
SELECT registration.firstName, registration.lastName, registration.phone, experience.options, additionalInfo.workshops
FROM registration, experience, additionalInfo
WHERE registration.identifier = experience.identifier
AND experience.paid = 'Yes'
AND registration.eventName = 'march2013'
AND additionalInfo.identifier = registration.identifier
ORDER BY registration.lastName ASC
Run Code Online (Sandbox Code Playgroud)
此查询仅返回additionalInfo.identifier
存在的值,但正如我所说,这不保证存在.
是否有可能INNER JOIN
通过MySQL查询来实现此结果?
我有一张包含策略的表格和一张包含会员的表格.策略表包含与成员表中的ID对应的作者的ID以及更新现有作者工作的作者的ID.是否有可能同时获取对这两个人的引用?像下面的东西,它没有返回错误,但也没有结果......
SELECT * FROM Strategies
INNER JOIN Members AS a
INNER JOIN Members AS b
WHERE Strategies.ID='2'
AND Strategies.AuthorID = a.ID
AND Strategies.UpdateAuthorID = b.ID
Run Code Online (Sandbox Code Playgroud) 可能是一个新手问题,但我是自学成才的,我正在尝试编辑一些超出我的舒适区域的代码,并且不会出现问题.请帮忙!
它是一个从MySQL数据库中选择数据并返回数组的函数.它使用其他几个"核心"函数来帮助建立数据库连接.
原始脚本如下所示:
class Core{
protected $db, $result;
private $rows;
public function __construct() {
$this->db = new mysqli('localhost', 'root', 'password', 'db');
}
public function query($sql){
$this->result = $this->db->query($sql);
}
public function rows(){
for($x = 1; $x <= $this->db->affected_rows; $x++){
$this->rows[] = $this->result->fetch_assoc();
}
return $this->rows;
}
}
class Chat extends Core{
public function fetchMessages(){
$this->query("
SELECT `chat`.`message`,
`users`.`username`,
`users`.`user_id`
FROM `chat`
JOIN `users`
ON `chat`.`user_id` = `users`.`user_id`
ORDER BY `chat`.`timestamp`
DESC
");
return $this->rows();
}
}
Run Code Online (Sandbox Code Playgroud)
问题是,在Chat类的fetchMessages()函数中有一个SELECT子句,它将"chat"表与"users"表连接起来以获取用户名.如果由于某种原因(删除,禁止,退出等),用户表中不存在用户ID,则SELECT子句不返回任何结果.
为了在用户不存在的情况下它仍然返回消息,我想我需要将JOIN分成2个SELECT CLAUSES:
首先,SELECT …
我有一个小的MySQL问题.我想选择我的表中包含用户不拥有的数据的所有行(它是一个交换工具).
例:
id | owner | event
----------------------
1 | 4 | 3
2 | 5 | 3
3 | 3 | 2
4 | 5 | 6
Run Code Online (Sandbox Code Playgroud)
我是老板#4.我希望看到除了我已经拥有的所有事件之外的所有事件,所以我希望得到如下结果:
event | offered by
-------------------
2 | 3
6 | 5
Run Code Online (Sandbox Code Playgroud)
可以通过SQL选择此项,还是必须选择所有用户自己的事件并id
从结果中删除所有其他事件?
我想拆分一个字符串,将其反转并用函数中的X而不是空格将其连接起来.
例如.
'世界卫生组织观察观众 - > - > SEHCTAWXOHWXSREHCTAWXEHT'
str = ("WHO WATCHES THE WATCHERS")
str = str.split(' ',4)
str.reverse()
print str
str = 'X'
seq = ("who", "watches", "the", "watchers")
print str.join(seq)
Run Code Online (Sandbox Code Playgroud)
但这只会让我:
['WATCHERS','THE','WATCHES','WHO']
whoXwatchesXtheXwatchers
当我想要"SEHCTAWXOHWXSREHCTAWXEHT"时
请回复简单的功能代码.我是初学者.
我想通过这些关节检索这些表中的所有字段.
我的查询在循环中运行并且不会停止.
SELECT *
FROM (`t_produits`, `t_categories`, `t_sscategories`, `t_produits_couleurs`, `t_couleurs`)
JOIN `t_categories` AS categories ON (`t_produits`.`produits_idcat` = `t_categories`.`categories_id`)
JOIN `t_sscategories` AS sscategories ON (`t_produits`.`produits_idsscat` = `t_sscategories`.`sscategories_id`)
JOIN `t_produits_couleurs` AS produitscouleurs ON (`t_produits`.`produits_idproduit` = `t_produits_couleurs`.`produits_couleurs_idproduit`)
JOIN `t_couleurs` AS couleurs ON (`t_produits_couleurs`.`produits_couleurs_idcouleur` = `t_couleurs`.`couleurs_id`);
Run Code Online (Sandbox Code Playgroud)
我试过这个并且效果很好:
SELECT *
FROM (`t_produits`, `t_categories`)
JOIN `t_categories` AS categories ON (`t_produits`.`produits_idcat` = `t_categories`.`categories_id`)
Run Code Online (Sandbox Code Playgroud)