我是一名 iOS 开发人员,我完全没有使用 SQL 数据库的经验。但是我使用下一个查询来获取一些信息:
INSERT INTO search ( packageID )
SELECT RowID
FROM packages
WHERE name LIKE ? OR description LIKE ?
ORDER BY %@ ASC
(%@
它只是一个 Objective-C NSString 的东西)。
我的问题是,无论如何,是否可以对结果进行排序,使第一个 WHERE( WHERE name LIKE ?
) 返回的结果超过第二个 WHERE 返回的结果?
非常感谢,请原谅我的无知!
如果你想让一个条件优先于另一个,你可以在 的键中表达order by
:
SELECT RowID
FROM packages
WHERE name LIKE ? OR description LIKE ?
ORDER BY (CASE WHEN name LIKE ? THEN 1 ELSE 2 END),
%@ ASC -- not sure if this is needed or desired
请注意,SQL 表表示无序集合。如果您确实需要按此顺序的结果集,请运行SELECT
查询。一旦在表中,订购信息(理论上)就会丢失。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句