2011-08-13 8 views
0

私は列の上で行を注文する必要がありますsource。しかし、ここで私が照会していますテーブルは(簡体字)です:アルファベット順にmysql-queryを注文すると、数字に文字列が与えられますか?

+---+-------+-----+ 
|id |source |foo | 
+---+-------+-----+ 
|1 |5  |hey | 
|2 |7  |yo | 
+---+-------+-----+ 

そして、ここではソースは以下のとおりです。

+---+-------+ 
|id |name | 
+---+-------+ 
|5 |First | 
|7 |Awesome| 
+---+-------+ 

、私はこのようなクエリを使用する場合:

SELECT * FROM table ORDER BY source 

。 ..結果は、ソースのIDによって注文されます。実際の名前ではありません。私は単にPHPで結果を並べ替えることができますが、SQLソリューションがあればそれを探しています。

ご協力いただければ幸いです!あなただけそうのように、一緒にテーブルを結合する必要があるよう

答えて

2

サウンズ:

SELECT * FROM table, sources WHERE table.source = sources.id ORDER BY sources.name 

をテーブルがソースと呼ばれ、あなたの源と仮定すると、私はそれが何である私はかなり理解していないと確信して

0

...そのmysqlが結果を並べ替える方法は驚くべきことですが、結果をアルファベット順に並べ替えるには、ソースが整数であるため、ソースではなく名前で並べ替える必要があります。

+0

驚くべきことではありませんが、クリスが言及した方法はわかりませんでした。 –

+0

これは単なる暗黙的な結合です。詳細はこちらhttp://en.wikipedia.org/wiki/Join_%28SQL%29 –

関連する問題