MySQLの "説明"のためのダミーの値はどうすればよいですか?

var q = 'SELECT * FROM stories_comments WHERE story_id=? AND user_id=? ORDER BY created_at ASC';
    mclient.query(q, [story_id, 0], function(err, results, fields){
        next(err, results);
    });

たとえば、これは私のコードです。私はこのクエリをMySQLで説明したいが、story_idを配置する値はない。どのように私はダミーIDでそれを説明するのですか?私は、story_idが "9"であるかのようにMySQLに説明文を与えるようにします。

基本的には、たとえstory_idやuser_idを提供していなくても、このクエリを説明するだけです。

0
あなたは説明によって何を意味しますか?
追加された 著者 aF.,
私は知っていますが、 SELECT の前に EXPLAIN してはいけませんか?だから私は本当に彼が意味するものなのか知りたかったのです。
追加された 著者 aF.,
@aF。マニュアルを参照してください: dev.mysql.com/doc/refman/5.1/ ja/explain.html
追加された 著者 a_horse_with_no_name,

1 答え

値を指定しないと、スキャンする必要がある行数を見積もることができないため、クエリを説明できません。これは、Explain出力に行を表示するだけでなく、適切な索引を選択するためのものです.story_idに索引があり、user_idに索引がある場合は、少ない行を選択する索引が選択されます。そして時にはwhere節が行に一致していないことがわかることがあります(where節は不可能です)

1
追加された
私が知りませんでした別のMySQLの欠点。
追加された 著者 a_horse_with_no_name,
他のrdbmsが値なしで説明を提供できるか?
追加された 著者 Aaron Brown,