我需要查询帮助。sql问题select * from * where one = two order by
我想从表中选择一些值,但值取决于其他单元格的值。我选择后我需要对它们进行排序。可以使用ELECT column FROM table WHERE one=two ORDER BY
...?
感谢, 塞巴斯蒂安
我需要查询帮助。sql问题select * from * where one = two order by
我想从表中选择一些值,但值取决于其他单元格的值。我选择后我需要对它们进行排序。可以使用ELECT column FROM table WHERE one=two ORDER BY
...?
感谢, 塞巴斯蒂安
当然可以,只要你正确拼写SELECT
。
这里是你可以复制并粘贴到你的MySQL查询浏览器看到这种类型的动作查询的例子:
CREATE TABLE table1 (
id INT NOT NULL,
name1 VARCHAR(100) NOT NULL,
name2 VARCHAR(100) NOT NULL,
sortorder INT NOT NULL
);
INSERT INTO table1 (id, name1, name2, sortorder) VALUES
(1, 'Foo', 'Foo', 4),
(2, 'Boo', 'Unknown', 2),
(3, 'Bar', 'Bar', 3),
(4, 'Baz', 'Baz', 1);
SELECT id
FROM table1
WHERE name1 = name2
ORDER BY sortorder;
结果:
4
3
1
也许有些工作实例帮助:
这将返回来自我的一个数据库的8100条记录:
SELECT * FROM fax_logs WHERE费= service_charge
这将返回从我的数据超过2700条记录:
SELECT * FROM fax_logs WHERE费= service_charge + 5
这将返回超过6900条记录:
SELECT * FROM fax_logs WHERE fee = service_charge + copies
我可能会误解你的问题,但我认为你试图比较第一列和第二列的值。在Mysql中,只能在ORDER BY
子句中使用数字而不是名称来引用列: SELECT * FROM table ORDER BY 1
(按第一列排序)。您不能使用WHERE
中的列索引。
你试过了吗? – 2010-06-08 17:29:12
是的,我尝试过,但我得到一个错误,以手动检查SQL语法。 – sebastian 2010-06-08 17:31:46
你能显示你的查询吗?那么可能是别的什么是错的。 – 2010-06-08 17:33:00