2012-04-18 6 views
0

スクリーンショットとプロジェクトでは、projectIdがコネクタです。私は、次のSQLコードを実行すると、以下のエラーが表示されます。mysqlは2つのテーブルから引き出して比較することを許可していません

SQLコード:

SELECT * FROM screenshots s, projects p WHERE s.projectId == p.projectId ORDER BY s.idscreenshot DESC 

がエラー:

A Database Error Occurred

Error Number: 1064

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 '== p.projectId ORDER BY s.idscreenshot DESC' at line 1

SELECT * FROM screenshots s, projects p WHERE s.projectId == p.projectId ORDER BY s.idscreenshot DESC

Filename: C:\Workspace\htdocs\Jan-2012\nurbell\system\database\DB_driver.php

Line Number: 330

なぜこれが起こっている誰もが知っていますか?

答えて

3

SQL equality operator=であり、==ではないことが起こっています。

使用している暗黙的な結合構文ではなく、明示的なJOIN構文を使用して表を関連付けることを強くおすすめします。だから、例えば、代わりに:

SELECT * 
FROM screenshots s, projects p 
WHERE s.projectId = p.projectId 
ORDER BY s.idscreenshot DESC 

あなたは、この使用する必要があります。

SELECT * 
FROM screenshots s 
JOIN projects p ON s.projectId = p.projectId 
ORDER BY s.idscreenshot DESC 
1

ではなく==

のシングル =記号を使用します
関連する問題